Conversion str en char

Résolu
bthivent Messages postés 49 Date d'inscription mardi 9 novembre 2004 Statut Membre Dernière intervention 26 janvier 2005 - 6 déc. 2004 à 20:32
ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 - 7 déc. 2004 à 18:39
Bonjour !
J'aimerai en faite faire une message box : MessageBox(NULL, message, "Connexion", MB_YESNO) avec dedans une message spéciale...
je sais que ma variable message doit être un const char *.
mais j'aimerai faire apparaître comme message : xxx.xxx.xxx.xxx s'est connecté...
je récupère l'adresse ip, je la met dans un string

            string Addrip_client;
            Addrip_client = inet_ntoa(csin.sin_addr);


et je fais le message :
string message = Addrip_client + " s'est connecte sur le serveur. L'autoriser a acceder au serveur ?";


mais comment convertir cela en const char * ..
j'ai essayé ceci :
            char * message2 = c_str(message);


mais ca me dit :
c_str' undeclared (first use this function)

Help plz !
Merci ! ;)

6 réponses

plus_plus_fab Messages postés 232 Date d'inscription vendredi 9 janvier 2004 Statut Membre Dernière intervention 8 janvier 2005
6 déc. 2004 à 21:23
salut,

c'est plutot
char* message2 = message.c_str();
3
cs_CurieuxDeSavoir Messages postés 7 Date d'inscription lundi 6 décembre 2004 Statut Membre Dernière intervention 23 décembre 2005
7 déc. 2004 à 10:42
salut,
essai
strcpy(message2, message);
3
ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 7
7 déc. 2004 à 11:55
const char* message2 = message.c_str();

devrait passer. De toute façon, il te faut un pointeur sur une chaîne non modifiable pour appeler MessageBox:

MessageBox(NULL, message.c_str(), "Connexion", MB_YESNO);
3
ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 7
7 déc. 2004 à 18:39
Au fait, le
strcpy(message2, message);

avec message2 défini seulement comme
char* message2

va compiler, mais va planter à l'exécution car message2 est un pointeur sur une chaîne qui ne pointe nul part en mémoire (non initalisé).
3

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
bthivent Messages postés 49 Date d'inscription mardi 9 novembre 2004 Statut Membre Dernière intervention 26 janvier 2005 3
7 déc. 2004 à 09:37
merci !
char* message2 = message.c_str();

le problème c'est que ca me dit ca :
invalid conversion from `const char*' to `char*'
0
bthivent Messages postés 49 Date d'inscription mardi 9 novembre 2004 Statut Membre Dernière intervention 26 janvier 2005 3
7 déc. 2004 à 18:06
Merci beaucoup ;)
0
Rejoignez-nous