Passer de char array a string

Passer de char array a string - C++ - Programmation

Marsh Posté le 23-12-2004 à 00:36:37    

Salut a  tous,  :hello:  
 
J'ai un peu taté de l'api win32, mais uniquement en C. Maintenant je voudrais pouvoir utiliser les avantages du c++.
 
Mon probleme est le suivant : un certain nombre de fonctions de l'api win32 ont pour parametre un pointeur sur un buffer CHAR, et dans certains cas le contenu de ce  buffer est modifié par la fonction (par exemple ReadFile, mais il semble y en avoir un certain nombre)
 
Je souhaite recuperer le contenu d'un fichier texte et ensuite travailler sur ce contenu(rechercher, extraire, inserer, ce genre de trucs...). J'ai entendu qu'il est conseillé d'utiliser les String du C++ plutôt qye les fonctions Str... du C (et je suis plutot d'accord car les str... sont un peu casse-c...  :pt1cable: )  
 
Je cherche donc s'il y a moyen de transformer un char array en String et vice-versa. Tout ce que j'ai trouvé, c'est c_str(), mais ca permets uniquement de lire une string comme si c'tait une char array.
 
Si quelqu'un peut me renseigner, je le remercie d'avance.  :jap:  

Reply

Marsh Posté le 23-12-2004 à 00:36:37   

Reply

Marsh Posté le 23-12-2004 à 01:32:57    

Le plus simple est d'utiliser C++ jusqu'au bout avec fstream au lieu de l'Api Win32.


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
Reply

Marsh Posté le 23-12-2004 à 01:45:55    

Si possible, j'aimerais evoluer petit a petit, et garder fstream pour plus tard (fstream ce sera peut etre plus tard, si je peut)

Reply

Marsh Posté le 23-12-2004 à 11:33:51    

Les std::string sont pas vraiment faites pour ça. Il faut passer par un tableau de char temporaire.
C'est plus complexe que fstream.
http://c.developpez.com/faq/cpp/?p [...] _par_ligne


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
Reply

Marsh Posté le 24-12-2004 à 04:17:18    

Merci HelloWorld,
 
Je vais aller voir ca, et Joyeux Noël

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed