看板 C_and_CPP 關於我們 聯絡資訊
大家好: 我想請問關於cin及cin.getline的問題 1) cin >> integer; cin >> an_char_array; 這樣為什麼會OK呢? 2) cin >> integer; cin.getline(an_char_array, 100); 這邊會發生沒辦法讓你輸入字元陣列 因為讀入integer後,\n被留下來了 cin.getline讀到\n就結束 我想問的是為什麼第一種情況卻不會發生這樣的問題呢? cin不是也是讀到空白或跳行等字元就結束嗎 謝謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 27.247.50.45
bibo9901:getline就是 "取下一行" 呀, 所以當然取到空字串囉 04/27 17:38
kumusou:那狀況一為什麼可以正常運作阿 CIN好像也是讀到換行就結束 04/27 17:44
bibo9901:cin>>string 是 "取下一個字串" 04/27 17:48
DJWS:cin會一直略過空白和換行 直到讀入符合變數型態的資料 04/27 22:04
DJWS: 這句當我沒說過 ^^^^^^^^^^^^^^^^^^^^^^^^^^ 04/27 22:07
revo:看來c++的實作 >>是一定要讀到 04/29 21:30
revo:你所指定的型別才會停 04/29 21:30