Problema con cin.clear();cin.ignore(255,"");
Publicado por Daniel (11 intervenciones) el 27/04/2008 00:19:06
Hola a todos
Después de mucho preguntar pude hacer que al ingresar
un número mayor de caracteres en la respectiva variable
el programa no se termine bruscamente.-
Ahora el caso es que de esta manera al escribir por ej.
el nombre hay que apretar 2 veces <Enter>
Lo que desearía es que me pudieran explicar el porqué y
si hay alguna manera de que esto no ocurra.-
------------------------------------------------------------------
------------------------------------------------------------------
Desde ya muchas gracias y un gran abrazo para todos
Daniel(Argentina)
Después de mucho preguntar pude hacer que al ingresar
un número mayor de caracteres en la respectiva variable
el programa no se termine bruscamente.-
Ahora el caso es que de esta manera al escribir por ej.
el nombre hay que apretar 2 veces <Enter>
Lo que desearía es que me pudieran explicar el porqué y
si hay alguna manera de que esto no ocurra.-
------------------------------------------------------------------
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <iostream>
#include <string>
using namespace std;
int main()
{
char primer[16],segundo[16],apellido[16];
cout << "Ingrese primer nombre(maximo 15 caracteres).:";
cin.getline(primer,16);
cin.clear();
cin.ignore(255,'
');
cout << "Ingrese segundo nombre(maximo 15 caracteres):";
cin.getline(segundo,16);
cin.clear();
cin.ignore(255,'
');
cout << "Ingrse apellido(maximo 15 caracteres).......:";
cin.getline(apellido,16);
cin.clear();
cin.ignore(255,'
');
strcat(primer," ");
strcat(segundo," ");
strcat(primer,segundo);
strcat(primer,apellido);
cout << "Nombre completo....: " << primer << endl << endl;
system("pause");
return EXIT_SUCCESS;
}
Desde ya muchas gracias y un gran abrazo para todos
Daniel(Argentina)
Valora esta pregunta


0