[問題] \n的問題

作者: a82 (QQ)   2015-07-14 13:58:50
int main(void)
{
int a;
char b[20];
cin >> a;
cout << "WWWWWW";
cin.getline(b,20);
cout << b << a << endl;
system("pause");
return 0;
}
執行時 cin.getline(b,20);有問題,最後一行b也不會出來,書上是寫輸入a後會有\n
\n被留在輸入序列,利用cin,getline()讀入字串時,字元陣列接收\n,成為空白字串.
但我看不懂,書上的解釋,
\n不是cin.getline()跑完後才在最後面加上的嗎?
作者: putumaxally (putumaxally)   2015-07-14 19:00:00
cin >> a; cin.ignore();感覺是緩衝區的問題,不過我對IO不熟,不解釋
作者: bjiyxo (若自礌)   2015-07-14 22:24:00
cin>>a你輸入的時候就已經把\n輸進緩衝區了,所以在cin.getline()之前就有\n了

Links booklink

Contact Us: admin [ a t ] ucptt.com