一、cin用法簡介
cin是一個C++標準輸入流類,它用於從標準輸入設備(鍵盤)讀取數據。在使用cin的時候,我們需要使用標準流輸入運算符(>>)。
int a; cin >> a;
上述代碼就是使用cin從鍵盤讀取一個整型數據並存儲到變數a中。
二、cin讀取不同類型的數據
cin可以讀取多種類型的數據,包括整型、浮點型、字元型、字元串等常見類型,下面分別介紹其用法:
1. 讀取整型數據
使用cin讀取整型數據時,需要定義一個整型變數並且使用>>運算符讀取數據。
int a; cin >> a;
2. 讀取浮點型數據
使用cin讀取浮點型數據時,需要定義一個浮點型變數並且使用>>運算符讀取數據。
float f; cin >> f;
3. 讀取字元型數據
使用cin讀取字元型數據時,需要定義一個字元型變數並且使用>>運算符讀取數據。
char c; cin >> c;
4. 讀取字元串數據
使用cin讀取字元串數據時,需要定義一個字元數組並且使用>>運算符讀取數據。需要注意的是,由於cin將空格和換行符也看作是輸入,因此只能讀取一個單詞,如果需要讀取整個句子則需要使用其他方法。
char str[100]; cin >> str;
三、讀取多個數據
使用cin可以讀取多個數據,可以使用多個>>運算符實現,也可以使用鏈式輸入(Chained Input)實現。
1. 多個>>運算符實現
使用多個>>運算符讀取多個數據時,需要按照數據類型順序輸入。如下面代碼中,先讀取整型數據,再讀取浮點型數據。
int a; float b; cin >> a >> b;
2. 鏈式輸入實現
鏈式輸入是將多個>>運算符連續使用的簡寫方式,可以使用標準C++語法構成一條合法語句。
int a; float b; cin >> a >> b; // 等價於 cin >> a; cin >> b;
四、處理輸入錯誤
由於輸入數據的不確定性,有時候會出現用戶輸入的數據類型不匹配、越界等問題。對於這種情況,C++提供了標準異常處理機制,使用catch可以捕獲異常並做出相應處理。
int a; try { cin >> a; if(cin.fail()){ throw "Input type error!"; } } catch(const char* errMsg){ cout << errMsg << endl; }
上述代碼中,我們使用了try-catch語句來處理輸入錯誤,如果輸入數據類型錯誤則會拋出錯誤信息,並在catch語句中捕獲並輸出錯誤信息。
五、小結
cin是一個非常重要的C++標準輸入流類,可以讀取不同類型的數據並進行相應的操作,非常方便。但是由於輸入數據的不確定性,需要對輸入的數據進行處理,避免發生錯誤。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/297992.html