c 學習筆記

2021-06-21 21:48:46 字數 1337 閱讀 8569

c++學習筆記

cin.clear()用法

cin包含乙個描述流狀態的資料成員。流狀態由三個ios_base元素組eofbit,badbit,failbit

其中每個元素都是一位,可以是1或者是0,當cin操作到達檔案末尾時,它將設定eofbit;當cin操作未能讀取到預期的字元時它將設定failbit。i/o失敗也可能將failbit設定為1,在一些無法診斷的失敗破壞流時,badbit元素將被設定。當全部三個狀態都設定為0時,說明一切順利。程式可以檢查流狀態並使用這種資訊來決定下一步做什麼。

流狀態成員

描述eofbit

如果檔案到達檔案尾,則設定為1

badbit

如果流被破壞,設定為1,例如,檔案讀取錯誤

failbit

如果輸入操作沒能讀取預期的字元或者是輸出操作沒能寫入預期的字元,設定為1

goodbit

另一種表示0的方法

good()

如果流可以使用(所有的位被清除),返回true

eof()

如果eofbit被設定,返回true

bad()

如果 badbit被設定,返回true

fail()

如果badbit或者failbit被設定,返回true

clear (iostate s)

將流狀態設定為s,s的預設值為0

cin.clear()其實就是清除cin流的錯誤狀態

例子:#include

usingnamespace std;

intfill_array(double arr,int limit)

double temp;

int i;

for(i=0; icout<<"inter">temp;

if(!cin) //判斷是否是錯誤的型別(雖然題目是double型的,輸入int型沒問題),如果型別錯誤,failbit被設定為1,fail()返回true,cin被標記為錯誤,不可用;

cin.clear(); //此時用cin.clear()來清除錯誤狀態,使failbit設定為0;現在可用  

while(cin.get()!='\n')

continue;

cout<<"bad input"

else if(temp<0)

break;

arr[i]=temp;

return i;

int main()

double arr[100];

int limit=100;

int a;

a= fill_array(arr,limit);

for(int j=0;jcout

C 學習筆記( )

一 語法 迴圈 foreach 型別識別符號 in 表示式 code 用法 例子int temp foreach int num in temp 每次從temp取乙個元素賦給num直至取完 console.writeline n num 每行顯示乙個元素 執行結果 c 中唯讀 只寫控制 class ...

C 學習筆記

1.函式特徵 有函式頭和函式體 接受乙個引數 返回乙個值 需要乙個原型。2.c 命名規則 在名稱中只能使用字母字元 數字和下劃線 名稱的第乙個字元不能是數字 區分大寫字母和小寫字母 不能將c 關鍵字用作名稱 以兩個下劃線或下劃線和大寫字母打頭的名稱被保留給實現 編譯器及其使用的資源 使用,以乙個下劃...

c 學習筆記

屬性 屬性開頭字母大寫 屬性可以判斷輸入的非法值 屬性本身不儲存值 依靠字段 索引器 using system using system.collections.generic using system.linq using system.text namespace b try catch exc...