Control de dépassement

cs_AngeloVivaldi Messages postés 60 Date d'inscription dimanche 8 décembre 2002 Statut Membre Dernière intervention 1 juillet 2004 - 31 juil. 2003 à 18:57
tcok Messages postés 61 Date d'inscription samedi 7 juin 2003 Statut Membre Dernière intervention 3 août 2005 - 31 juil. 2003 à 23:06
Voila, j'ai un prob.
Dans mon programme, je demande par exemple le nom et le prenom comme ceci :

cin.getline(nom,20);
cin.getline(prenom,20);

seulement, lorsque lutilisateur met un nom de plus de 20 caractères, le programme met le reste dans le prénom et se termine, ce qui est fort génant !!

quelqu'un pourrai maider a régler ce problème ??

2 réponses

cs_JCDjcd Messages postés 1138 Date d'inscription mardi 10 juin 2003 Statut Membre Dernière intervention 25 janvier 2009 4
31 juil. 2003 à 19:28
bah il faut tout simplement
specifier 256 au lieu de 20 :
cin.getline(nom,256);
cin.getline(prenom,256);

il y a de la marge avec 256 !

:-p :-p :-p :shy) :-p :-p :-p :shy) :-p :-p :shy)
:shy) :-p :shy) :shy) :-p :shy) :shy) :shy) :-p :shy) :-p
:shy) :-p :shy) :shy) :-p :shy) :shy) :shy) :-p :shy) :-p
:-p :-p :shy) :shy) :-p :-p :-p :shy) :-p :-p :shy)
0
tcok Messages postés 61 Date d'inscription samedi 7 juin 2003 Statut Membre Dernière intervention 3 août 2005
31 juil. 2003 à 23:06
Autrement si tu veux garder 20 caracteres tu faire ceci :

// Dans le header stdio.h
fflush(stdin);
//remet a zero le tampon memoire d'entree

@+
tcok
0
Rejoignez-nous