Conversion str en char [Résolu]

Signaler
Messages postés
49
Date d'inscription
mardi 9 novembre 2004
Statut
Membre
Dernière intervention
26 janvier 2005
-
Messages postés
2070
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
3 juillet 2006
-
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

Messages postés
232
Date d'inscription
vendredi 9 janvier 2004
Statut
Membre
Dernière intervention
8 janvier 2005

salut,

c'est plutot
char* message2 = message.c_str();
Messages postés
7
Date d'inscription
lundi 6 décembre 2004
Statut
Membre
Dernière intervention
23 décembre 2005

salut,
essai
strcpy(message2, message);
Messages postés
2070
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
3 juillet 2006
8
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);
Messages postés
2070
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
3 juillet 2006
8
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é).
Messages postés
49
Date d'inscription
mardi 9 novembre 2004
Statut
Membre
Dernière intervention
26 janvier 2005
2
merci !
char* message2 = message.c_str();

le problème c'est que ca me dit ca :
invalid conversion from `const char*' to `char*'
Messages postés
49
Date d'inscription
mardi 9 novembre 2004
Statut
Membre
Dernière intervention
26 janvier 2005
2
Merci beaucoup ;)