FAQ:ANSI CPP:при вводе текста в переменную считываются только те символы, которые шли до пробела, а необходимо считать всю строку целиком
Материал из Весельчак У
Версия от 00:53, 30 июля 2008; RXL (обсуждение | вклад) (/* Как преодолеть такую ситуацию, когда при вводе текста в переменную считываются только те символы, которые шли до пробела, а мне необход)
Как преодолеть такую ситуацию, когда при вводе текста в переменную считываются только те символы, которые шли до пробела, а мне необходимо считать всю строку целиком?
Например:
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');