Bonjour,
Comment convertir un "CString" en "char *":
Bonjour,
Comment convertir un "CString" en "char *":
La méthode GetString() peut peut-être t'aider.
Exemple :
Ca renvoie un PCXSTR, mais je ne suis pas sûr de ce que l'on n'a le droit de faire avec.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 CString tmp; printf("%s\n", tmp.GetString());
Pour plus d'info, tu devrais aller sur le forum Visual C++.
J'ai beau chercher mais je ne vois tjrs pas les différences entre CString et String... Quelqu'un pourrait m'éclairer?![]()
string est une classe de la STL, qui contient certaines fonctionalités utiles
CString est une classe Microsoft, qui contient d'autres fonctionalités utiles liées entre autres au système de ressources de Windows, ainsi qu'une méthode qui permet d'écrire dedans exactement comme avec printf() (chose que la STL semble avoir renié: il faut avoir boost pour trouver l'équivalent)
Pour convertir une CString en char * il faut utiliser la méthode GetBuffer().
Mais pour convertir en const char *, pas grand chose de plus simple : il y a un opérateur de conversion de type, ce qui permet de faire sans problème:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 CString csMessage; const char *sczMessage; csMessage.Format("blabla %d", 3); sczMessage = csMessage; //pas de &
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
Merci pour l'info!
Si jamais pour convertir une string en char* voilà un lien:
http://c.developpez.com/faq/cpp/?pag...TRINGS_to_char
![]()
La foction " GetString() " n'existe pasEnvoyé par CroustRyu
![]()
![]()
Comment utiliser la méthode GetBuffer()Envoyé par Médinoc
:
MSDN.
(attention le "you should pass 1 for the length to ReleaseBuffer" est un bug, c'est -1)
(Jeter aussi un coup d'oeil à ReleaseBuffer)
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
Le fonctionnement pour CString n'est pas le même que pour string???
non, pas du tout. Et les fonctions proposées ne sont pas les mêmes, non plus.
Et aussi, la classe string est une instance du template basic_string, alors que CString est une classe simple.
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
Le multipost est interdit, merci de respecter les règles à l'avenir.
La suite ici :
http://www.developpez.net/forums/viewtopic.php?t=409759
Mieux que SDL : découvrez SFML
Mes tutoriels 2D/3D/Jeux/C++, Cours et tutoriels C++, FAQ C++, Forum C++.
Partager