[C++] - std::getline Skipping input problem

Category: C++ - Written on July 2, 2018
while (1)
{
	std::string str;
	std::getline(std::cin, str);
    
    ...
}

위와 같은 형태로 문자열을 반복적으로 입력받을 경우 사용자가 Escape sequence 또는 특정한 문자를 입력하면 std::getline이 skipping 되는 경우가 있다.

while (1)
{
	std::string str;
	std::getline(std::cin >> std::ws, str);
    
    ...
}

위와 같이 Whitespace를 제거한 값을 입력받도록 처리하면 skipping 현상이 없어진다.

Reference


Comments