Probleme de Convention String en Char pour envoyer par sms

Bonjour.

Je viens vers vous car après plusieurs essais, je ne comprend pas comment fait on pour convertir une variable String en Char pour que la librairie du sim900 l'envois par sms .

voici le bon code qui me pose un souci. il y a l'erreur "cannot convert 'String' to 'char' in initialization"

        float flat, flon;
        unsigned long age;
        gps.f_get_position(&flat, &flon, &age);
        Serial.print("https://www.google.fr/maps/place/");
        String lattitude (flat == TinyGPS::GPS_INVALID_F_ANGLE ? 0.0 : flat, 6);
        Serial.print(lattitude);
        Serial.print("+");
        String longitude (flon == TinyGPS::GPS_INVALID_F_ANGLE ? 0.0 : flon, 6);
        Serial.print(longitude);
        Serial.println();
        char MESSAGE = (lattitude,longitude);
        gprsTest.sendSMS(PHONE_NUMBER,MESSAGE);

J' ai penser à passer directement avec se bout de code

        float flat, flon;
        unsigned long age;
        gps.f_get_position(&flat, &flon, &age);
        Serial.print("https://www.google.fr/maps/place/");
        char lattitude (flat == TinyGPS::GPS_INVALID_F_ANGLE ? 0.0 : flat, 6);
        Serial.print(lattitude);
        Serial.print("+");
        char longitude (flon == TinyGPS::GPS_INVALID_F_ANGLE ? 0.0 : flon, 6);
        Serial.print(longitude);
        Serial.println();
        char MESSAGE = (lattitude,longitude);
        gprsTest.sendSMS(PHONE_NUMBER,MESSAGE);

le souci de se code c'est que dans le moniteur n'affiche pas la longitude et la lattidute "https://www.google.fr/maps/place/6+6" il n'affiche que les deux derniers 6.

merci infiniment par avance pour votre aide.

Lisez la doc de la classe String (avec un S majuscule) et vous verrez comment accéder aux buffer de caracteres (et ici on vous recommandera de ne pas utiliser cette classe du tout de travailler directement avec des c-string)

Sinon il y a la fonction String.c_str() qui est pratique.

Merci pour vos réponses.

je m'en suis sorti grâce a l'aide de String.

je mets mon bout de code si cela peut aider d'autre membres.

        float flat, flon;
        unsigned long age;
        gps.f_get_position(&flat, &flon, &age);
        String lattitude (flat == TinyGPS::GPS_INVALID_F_ANGLE ? 0.0 : flat, 6);
        String longitude (flon == TinyGPS::GPS_INVALID_F_ANGLE ? 0.0 : flon, 6);    
        String mystring = "https://www.google.fr/maps/place/" + lattitude;
        String mystring2 = mystring + "+";
        String mystring3 = mystring2 + longitude;
        
        char SMS[mystring3.length()+1];
        mystring3.toCharArray(SMS,mystring3.length()+1);

        gprs.sendSMS(PHONE_NUMBER,SMS);

Ce n'est peut être pas la meilleur façon de faire mais cela fonctionne.

merci