Если у меня есть следующий код C ++:
#include <iostream>
#include <string>
int main()
{
std::string str;
while (std::cin>>str)
std::cout<<str<<"\n";
std::cout<<str.length(); // UPDATE: str.length
return 0;
}
Когда я запускаю программу, не набираю string
и не нажимаю Enter
, я получаю вывод empty
. Означает ли это, что цикл while
работал и считал, что существует input
, даже если он был пуст?
Как я могу завершить этот цикл?
Наконец, почему я не получаю length
строки в моем выводе?
ОБНОВЛЕНИЕ: Я хочу решить проблему, используя string
функции
Спасибо.