Rechercher : dans
Par :

[C++] Conversion char* en CString

Dernière réponse le 3 mar 2009 à 13:03:43 Doudou95, le 11 fév 2009 à 08:22:52 
 Signaler ce message aux modérateurs

Bonjour,
je n'ai pas trouvé de sujet concernant cette conversion.
Pourriez vous m'indiquer sur des exemples simples comment convertir :
- un char en CString
- un char* en CString (en priorité cette conversion)

Mon char : buf[100]
mon CString : chaine

Configuration: Windows XP
Firefox 3.0.6

Meilleures réponses pour « [C++] Conversion char* en CString » dans :
Langage C++ - Les types de données VoirLes types de données Les données manipulées en langage C++, comme en langage C, sont typées, c'est-à-dire que pour chaque donnée que l'on utilise (dans les variables par exemple) il faut préciser le type de donnée, ce qui permet de connaître...
Langage C - Les types de données VoirLes types de données Les données manipulées en langage C sont typées, c'est-à-dire que pour chaque donnée que l'on utilise (dans les variables par exemple) il faut préciser le type de donnée, ce qui permet de connaître l'occupation mémoire (le...
Langage C - Les chaînes de caractères VoirQu'est-ce qu'une chaîne de caractères ? Une chaîne de caractères (appelée string en anglais) est une suite de caractères, c'est-à-dire un ensemble de symboles faisant partie du jeu de caractères, défini par le code ASCII. En langage C, une chaîne...

1

Char Snipeur, le 11 fév 2009 à 08:26:54

Heu... c'est quoi CString ?
Tu es sur que c'est du C++ ?
as tu essayer tout simplement chaine=buff; ? Salutation !
Char Snipeur

Répondre à Char Snipeur

2

Doudou95, le 11 fév 2009 à 08:29:49

Non ça ne fonctionne pas il y a une erreur dans l'exécution à cette ligne.
CString est propre aux MFC car je fait une IHM et je convertie un char* qui contient les données d'une carte magnétique en CString afin d'afficher les informations de ce badge dans une ListBox par objet.AddString(MonCString);

Répondre à Doudou95

3

Char Snipeur, le 11 fév 2009 à 08:47:43

MFC, je ne connaisais pas, c'est vraiment de la merde Visual. Toujours est-il qu'en survolant un tutoriel j'ai trouvé ça :

int i = 1;
char sz[] = "one";
CString str;
Str.Format( "Integer = %d, String = %s", i, sz );

une espèce de sprintf() objet. Salutation !
Char Snipeur

Répondre à Char Snipeur

4

Doudou95, le 12 fév 2009 à 10:41:27

J'ai changé de méthode car le problème venait de ma variable qui était mal utilisée mais la solution est de convertir le char* en string puis le string en CString

Répondre à Doudou95

6

loupius, le 1 mar 2009 à 21:40:17

Ouais, pourquoi faire simple quand on peut faire compliqué!!! ;-)

Répondre à loupius

5

ghghgh, le 1 mar 2009 à 19:54:45

C'est ta vie

Répondre à ghghgh

7

Doudou95, le 3 mar 2009 à 09:11:27

J'donne la solution pour ceux qui auront le même problème.

utilité de ton intervention = 0

grandis un peu coco

Répondre à Doudou95

8

Char Snipeur, le 3 mar 2009 à 09:22:48

L'intervention de loupious n'est pas inutile.
Il a juste voulu te faire remarqué gentiment que c'est une usine à gaz.
Faire des conversions en série, ce n'est pas une solution propre, tu accumules les erreurs possibles. La solution, je l'ai donné, c'est de passer par une méthode qui modifie le CString directement à partir du char* Salutation ! (il faut bien que vous compreniez que j'ai TOUJ­OURS raison)
Char Snipeur

Répondre à Char Snipeur

9

Doudou95, le 3 mar 2009 à 11:40:40

Ghghgh, le dimanche 1 mars 2009 à 19:54:45

C'est ta vie

######################

C'est de cette intervention que je parlais

Répondre à Doudou95

10

Doudou95, le 3 mar 2009 à 11:42:32

Oh fait j'avais testé ta méthode mais sans succès.
Mais au moins c'était une nouvelle possibilité :)

Répondre à Doudou95

11

Char Snipeur, le 3 mar 2009 à 12:28:33

Ok, désolé. A force, je ne répond plus au message de merde laisser par les anonymes.
Pourquoi la méthode que j'ai donné ne fonctionnait pas ? Salutation ! (il faut bien que vous compreniez que j'ai TOUJ­OURS raison)
Char Snipeur

Répondre à Char Snipeur

12

 Doudou95, le 3 mar 2009 à 13:03:43

Je peux pas te dire je suis une quiche juste j'ai fait la double conversion et ça marchait nickel :) c'est tout ce que je peux dire !) merci en tout cas je l'ai vus ailleurs ça doit donc être correct ^^

Répondre à Doudou95