FAQ:ANSI CPP:при вводе текста в переменную считываются только те символы, которые шли до пробела, а необходимо считать всю строку целиком — различия между версиями
Материал из Весельчак У
RXL (обсуждение | вклад) (Ветвление FAQ:ANSI CPP.) |
(нет различий)
|
Версия 21:50, 28 июля 2008
Как преодолеть такую ситуацию, когда при вводе текста в переменную считываются только те символы, которые шли до пробела, а мне необходимо считать всю строку целиком?
Например:
char test1[20], test[20];
cin >> test; //ввожу: "текст с пробелом"
cout << test; //выводится: "текст"}
scanf("%s", test1); //ввожу: "текст с пробелом"
printf("%s", test1); //выводится: "текст"
Как это обойти? Средствам доступными в TC++3?
string buffer; getline(cin, buffer, '\n'); cout << buffer << "|" << endl;
или
do
{
ch = getch();
cout << ch
} while (ch != '/0');