getline是不是前面有了一行cin >> n(某變數)
之後...再使用getline(cin, ss(某字串))就沒有辦法敲入鍵盤讀取了??
因為我試過以後 都是前面有cin>>某變數後...再使用getline(cin,ss)就都直接跳過...
有沒有人可以幫我解釋一下 謝謝~~
getline是不是前面有了一行cin >> n(某變數)
之後...再使用getline(cin, ss(某字串))就沒有辦法敲入鍵盤讀取了??
因為我試過以後 都是前面有cin>>某變數後...再使用getline(cin,ss)就都直接跳過...
有沒有人可以幫我解釋一下 謝謝~~
cin完之後換行字元('\n')還留在輸入串流內,然後getline()因讀到換行字元就當作輸入結束。
所以,增加一行輸入把換行吃掉就可以了。
cin>>n;
getline(cin,ss);
getline(cin,ss);