cin後使用getline

情景:

getline()用來讀取一行數據,但是當getline()前面進行了cin輸入的話,getline()會把進行cin輸入時行末丟棄的換行符讀入,從而造成getline()第一次獲得的數據爲一空行。

問題:

此時getline()所讀入的第一行是空行,並且佔據一次讀入次數,造成只能再輸入rep-1次數據。

解決辦法:

cin.ignore();

如此即可忽略掉第一次輸入所遺留的換行符,用getline()直接讀取下一行輸入的數據。

另外,C++中cin、cin.get()、cin.getline()、getline()、gets()等函數的用法

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章