Afficher un type string

Signaler
Messages postés
44
Date d'inscription
vendredi 21 janvier 2005
Statut
Membre
Dernière intervention
22 mai 2006
-
Messages postés
18
Date d'inscription
samedi 6 novembre 2004
Statut
Membre
Dernière intervention
12 mars 2005
-
Dans Visual C++, on m'affiche l'erreur que les flots << (ou >>) ne sont pas surdéfinis pour recevoir une opérande droite de type string.
Dans Dev C++, je n'ai pas cette erreur. Y'a-t-il une classe spéciale à integrer pour que ça marche dans Visual ?

2 réponses

Messages postés
224
Date d'inscription
mardi 12 août 2003
Statut
Membre
Dernière intervention
18 octobre 2010

J'ai pas ce genre de problème. Tu as bien inclue et <string> au debut de ton source?. Au pire, tu peux faire un:

ostream& operator << (ostream& o,const string& s) {
return o << s.c_str();
}
Messages postés
18
Date d'inscription
samedi 6 novembre 2004
Statut
Membre
Dernière intervention
12 mars 2005

oui j'ai aussi rencontré un problème du genre. Je ne sais pas pourquoi
ils ne sont pas aller surcharger cet opérateur pour une classe de la
stl mais bon faut faire avec.

cin et cout affichent des types char* par contre donc la solutio, je
l'accorde on pourrait faire mieux et d'utiliser une hiostoire de
pointeur.

ton string: string toto("ma chaine");

pour le passer en char* : &toto[0];

toto[0] te retourne le premier élément de ta chaine, le & fait qu'on récupère l'adresse du coups tu as un char*.

voila u n'as plus qu'a taper par exemple : cout << &toto[0]
<< endl; pour que ca te sorte la chaine sur un cout.



A bientot.

darkkinj
http://www.kinj.fr.st