1、使用cin和迴圈結合進行文字輸入
#include
intmain()
cout << endl << count;
return0;
}
程式通過while迴圈結合cin輸入進行文字的輸入當識別到*號時停止讀取,但缺點是cin會忽略空格和換行符,且只有在按下回車鍵之後內容才會傳送給程式。
以以下程式為例
int n;
cin >> n ;
在使用cin讀取時,若輸入的型別與儲存資料的型別不匹配時,會發生4種錯誤:
1)、n的值保持不變
2)、不匹配的輸入將被保留在輸入佇列中
3)、cin物件的乙個錯誤標誌被設定
4)、對cin方法的呼叫將返回false
如在n處輸入字元c則字元c會留在佇列中且n的值保持不變,同時cin的錯誤標誌將被設定(此時cin無法繼續讀取佇列中的後續內容,可以使用clear()函式重置此錯誤標誌),且cin會返回false,錯誤處理可以使用以下**:
while
(!cin >> n)
cout <<
"please enter a number : "
;}
2、使用cin.get(char)替換上述的cin,函式cin.get()讀取下乙個字元(即使是空格),然後將讀取的內容送到指定的char型變數中,且cin.get(char)傳入引數是引用型(c++獨有),不用傳位址,如下所示
#include
intmain()
cout << endl << count;
return0;
}
同時cin.get(char)和cin.get(char*,arsize),兩者是c++函式過載的結果,c++允許函式過載,即函式名相同但七引數不能完全相同,之後c++編譯器會根據呼叫處所傳入的引數,為其呼叫最合適的,char*是字串的位址。 C 學習筆記之 輸入和輸出
在 c 中,我們通過呼叫輸入輸出流庫中的流物件 cin 和 cout 來實現輸入和輸出。include using namespace std int main 56 enter 5.36 enter a enter 56 5.36 a在用 cin 進行輸入時,我們不用指定具體的資料型別,系統會根據...
學習C 文字的輸入cin
for while do while迴圈語句另外還有if和switch選擇語句。另外重點是cin是如何處理字元輸入的。strcmp word,book 需要包含標頭檔案 當word大於 book 時,結果大於0 str1 str2 str1 str2 str1 str2 直接用關係符來比較,stri...
C 筆記 文字讀寫
c 筆記1 c 筆記 文字讀寫 using system using system.io public class duxie return input matrix public void writeto double arr 儲存txt文字 sw.writeline 清空緩衝區 sw.flush...