URGENT : Problème de "cin"

monomanahune Messages postés 5 Date d'inscription lundi 6 janvier 2003 Statut Membre Dernière intervention 22 septembre 2003 - 29 avril 2003 à 18:41
d a v e Messages postés 5 Date d'inscription mardi 28 décembre 2004 Statut Membre Dernière intervention 1 février 2005 - 22 janv. 2005 à 22:30
Monomanahune 8-)

J'ai un petit problème sur un cin.
Je souhaiterais rentrer une chaine de caractère en utilisant cin
mais je voudrais pouvoir entrer également le caractère espace.

Le souci, c'est que si je fais
{
char * s;
cin >> s;
...
}

et que lors de l'execution je rentre "Bonjour je suis Monomanahune", il va uniquement mettre dans s le premier mot "Bonjour".

Je sais que je pourrais utiliser cin avec plusieurs variables char*, mais comme je ne ne connais pas a priori le nombre de mots à saisir, je ne peux pas savoir combien de variable réserver...

Que puis-je faire pour réussir à n'avoir qu'une seule chaine avec les espaces ???

Merci d'avance...

3 réponses

Haldwin Messages postés 77 Date d'inscription lundi 15 avril 2002 Statut Membre Dernière intervention 16 juin 2004
29 avril 2003 à 19:07
Salut,
Pour regler ton pb, utilises le cin comme suit:

char line[25];
cin.get( line, 25 );
Chope la ligne jusqu'au retour a la ligne.

Tu peux mettre un dernier parametre qui represente le caractere de fin de capture.
Ex : cin.getline( line, 25, '*' );
Des qu'il voit un * il arrete de mettre dans le tab 'line'.

Wala wala,
Bon dev,
H@ldwin.
0
cs_bouba Messages postés 518 Date d'inscription dimanche 2 décembre 2001 Statut Membre Dernière intervention 10 novembre 2007 3
29 avril 2003 à 19:33
Bon, je vé peut-être répéter ce que Haldwin t'a dis
il a fé cin.getline(.....);
Je feré plutôt.

char* chaine;
getline(cin, chaine);

voila.
A+.
bouba
0
d a v e Messages postés 5 Date d'inscription mardi 28 décembre 2004 Statut Membre Dernière intervention 1 février 2005
22 janv. 2005 à 22:30
salut!
cui assez new ds la programation et j aimerai savoir comt faire pour entrer une chaine ds le programme ss utiliser la fonction getline()? c koi le code source de cette fonction? coment fait elle pour detecter la fin de la phrase alors ke je ne fini pas par un caractere special!
0
Rejoignez-nous