2017-04-20 78 views

回答

1

因爲你是從std::cin閱讀兩次

std::getline函數返回該流,然後您在流上調用get,這需要您輸入其他內容。

你顯然只需要輸入一次是因爲你真正進入第二輸入字符:'f''d'換行符。所以第一個get電話會讀取'f'。然後下一次迭代getline調用將讀取"d\n"get調用將讀取您編寫的下一個inbput等。

簡單的解決方案?不要致電get

getline(cin, s); 
cout << s << '\n'; 
相關問題