1
下面是代碼:cin和getline在一個程序中,只有其中一個生效?
#include <iostream>
#include <stdio.h>
using namespace std;
int main(int argc, char const* argv[])
{
char s1[23];
char s2[23];
// cin >> s1;
cin.getline(s2, 22);
cout << s1 << endl;
cout << s2 << endl;
return 0;
}
如果我取消對該行cin >> s1
,然後getline函數將被跳過,不知道爲什麼會這樣。
它對我的工作,如果沒有註釋..... – Netwave
它不會被跳過,但它沒有更多的東西在第一個換行符之前閱讀。 – Erbureth
您需要了解'cin >>'和'cin.getline'如何處理行尾。在沒有評論的情況下,有一條線就結束了,就是所有的「getline」。 – crashmstr