CString Bizarre !! [Fermé]

Signaler
-
 floydus -
Bonjour,
je suis nouveau à VC++, mais je connais bien c++...
J'ai un problème avec l'utilisation de la classe CString.

J'arrive à créer un object en inscrivant directement du texte, comme ici
///////////
CString strFileName("c:\\temp\\image");
///////////
ça fonctionne mais aussitôt que j'utilise une variable, pouf rien à faire.

Le code suivant ne fonctionne pas.
//////////
char *test;
test="c:\\temp\image";
CString strFileName(test);
//////////
J'abandonne, j'ai vraiment cherché longtemps, sans succès.
Éclairez-moi !


Ceci ne fonctionne pas !
Vraiment bizarre microsoft !!!
Merci !
Dave
A voir également:

2 réponses

Messages postés
485
Date d'inscription
vendredi 16 avril 2004
Statut
Membre
Dernière intervention
15 mars 2009
157
salut!

test est un pointeur sur char, et on ne peut pas faire test="machaine"
sauf dans ce cas:
char *test="ma chaine";

(déclaration/initialisation avec 11 caractères)

par contre, on peut faire :
strcpy(test,"machaine");  (inclure stdio.h ou string.h)

on peut faire :
CString toto;
toto="machaine";
toto=test;
très interressant aussi:
toto=toto+" se ralonge";


CString est beaucoup plus souple et facile à manipuler que char *
mais malheureusement le traitement est plus lent, prend plus de place en mémoire etc. Faut savoir ce qu'on veut.
(Je trouve que visual c++ a une documentation de base mal foutue)
bon courage
¤
CA NE FONCTIONNE PAS...
Ma fonction recoit un *char psz

j'ai essayé CString((LPSTR)psz)


fonctionne pas non plus...
Je vous assure^par contre que ceci donne le résultat escompté.
CString strFileName("c:\\temp\\image");