Format %s expects type char *
Résolu
Mathieu2226
-
Mathieu2226 -
Mathieu2226 -
Bonjour,
j'ai un probleme avec une de mes requetes en c++
j'ai envoyer d'une classe a l'autre plusieurs strings, et j'aimerais les utiliser en tant que variable dans ma requete sql
char commande_char[100]; // ma commande pour la requete
wxString bouyakacha=wxT("bouyakacha"); // une variable string
sprintf(commande_char,"SELECT %s FROM test",bouyakacha.c_str()); // mon %s qui est sensé renvoyer ma variable
query.execute(commande_char); // l'execution de ma requete
or jobtient comme warning
Warning: format '%s' expects type 'char*' but argument 3 has type 'const wxChar*'
j'ai essaye quasiment toute les conversions possible mais impossible de reussir a passer outre l'avertissement
j'ai un probleme avec une de mes requetes en c++
j'ai envoyer d'une classe a l'autre plusieurs strings, et j'aimerais les utiliser en tant que variable dans ma requete sql
char commande_char[100]; // ma commande pour la requete
wxString bouyakacha=wxT("bouyakacha"); // une variable string
sprintf(commande_char,"SELECT %s FROM test",bouyakacha.c_str()); // mon %s qui est sensé renvoyer ma variable
query.execute(commande_char); // l'execution de ma requete
or jobtient comme warning
Warning: format '%s' expects type 'char*' but argument 3 has type 'const wxChar*'
j'ai essaye quasiment toute les conversions possible mais impossible de reussir a passer outre l'avertissement
2 réponses
-
wxString bouyakacha=wxT("bouyakacha"); // une variable string
Je ne comprends pas l'interet de passer par ton type wxString. Passe par un type char * et tu n'auras plus ton warning. -
je passais par des wxstring pour pouvoir moduler tres facilement mes variables
j'ai trouve la solution
wxString req=wxt("la requete");
char* commande_char=new char[500];
sprintf(commande_char,(const_cast<char*>((const char*)req.mb_str())) );