char s[11];
cin.getline(s,11):讀取輸入當前行的11個字元到s中,但是存在問題:
流快取裡面存在的多餘的位元組如果沒讀完,那麼有幾個流狀態標誌:eof、fail、bad、good會出錯。這樣接下來的讀取就出錯了!需要cin.clear() 來清除這些標識位才能繼續讀取接下來的數字。(當前流快取中的字元若有剩餘,則仍然存在,不會讀取到下一行的字串。)所以還需要再來個cin.ignore(n, 『\n』)。
可以這麼寫:
char s[11];
char t[11];
cin.getline(s,11)
if(strlen(s)<0)
cin.clear();
char ch;
while((ch=cin.get())!= '\n'){}
cin.getline(t,11);
if(strlen(t)<0)
cin.clear();
while((ch=cin.get())!= '\n'){}
不過 一般人沒這麼傻像我這麼寫,都用更機智的辦法:
#include
string *s1,*s2;
getline(cin,s1);
getline(cin,s2);
C 讀取字串
我們在使用鍵盤輸入字串的時候,輸入流對於字串的讀取有幾種不同的實現方式。cin cin 在讀取字串時使用空白 空格 製表符和換行符 來確定字串的結束位置,這說明cin在獲取字元陣列輸入時只能讀取乙個單詞。而讀取該單詞後,cin將該字串放到陣列中,並在結果自動新增空字元。so,在某些時候,我們需要使用...
C 讀取JSON字串
下面這個是一段json字串巨集觀圖 下面我們通過c 讀取json字串裡的任何乙個數值 string jsonstring 上面json字串 需要引用newtonsoft.json.dll jobject json jobject.parse jsonstring 下面我們讀取json字串的第一級裡的...
字串讀取
有兩種方法可以讀c 字串 使用提取操作符 和getline函式。1 字串提取操作符 首先,它跳過前導空白字元,然後提取所有鄰近的非空白字元。當發現空白字元時,它就停下來。終止空白字元被留在輸入流中.提取操作符可以用來從鍵盤 cin流 或者使用開放式檔案流從檔案讀資料。例如,要把乙個值讀入字串 物件s...