linux中清空輸入緩衝區最簡便的方法
再來看看linux對fflush(stdin)的說法
**: man 3 fflush
如果對fflush傳入乙個輸入流,會清除已經從輸入流中取出但還沒有交給程式的資料
連輸入流都沒提到。說明glibc實現中的fflush要麼對輸入流什麼都沒乾,要麼幹了些對外部完全沒有影響的事
要想實現你所希望的效果,可以用非標準的fpurge()。glibc中的近似實現是__fpurge()。
**:man 3 fpurge
#include #include #include #include int i = 0;
/*定義結構體變數*/
struct contact
;struct contact p[100]; //宣告結構體p
void clear();//清屏
void inte***ce();//介面函式,輸出主介面
void add();//定義新增聯絡人函式
void printfcon(int j);//定義列印單個聯絡人資訊函式
void list();//定義聯絡人列表函式,輸出所有聯絡人資訊
int findnum( char *s, int *accumlate );//定義找到聯絡人編號函式,找到編號存入陣列accumlate
void seek();//定義查詢函式,通過姓名查詢
void coverdata( int j );//定義覆蓋資訊函式
void delete();//定義刪除聯絡人函式
void modify( int j );//定義修改函式
void revise();//定義修改資訊函式
int main()
}return 0;
}void clear()//清屏
void inte***ce()//主介面函式
void add()//定義新增聯絡人函式
while( c == 'y' );//do while語句,當c不等於y時退出迴圈
}void printfcon(int j) //定義列印單個聯絡人資訊函式
void list()//定義聯絡人列表函式,輸出所有聯絡人資訊
}int findnum( char *s, int *accumlate )//定義找到聯絡人編號函式,找到編號存入陣列accumlate
}return j; //返回陣列中有幾個值,即能找到幾個聯絡人
}void seek()//定義查詢函式,通過姓名查詢
; char name[20] = ;
scanf("%s",name);
accum = findnum( name, a ); //呼叫findnum函式,並把找到幾個聯絡人賦給accum
if( accum == 0 )
else if( accum == 1 ) //如果找到乙個聯絡人,輸出這個聯絡人的資訊
else if( accum > 1 ) //找到不止乙個聯絡人,輸出全部聯絡人資訊
}printf("是否繼續查詢? (y/n) :");
__fpurge(stdin);
c = getchar();
}while( c == 'y' );
}void coverdata( int j )//定義覆蓋資訊函式
i--; //將後乙個的資訊傳給前乙個
}}void delete()//定義刪除聯絡人函式
; char name[20] = ;
scanf("%s",name);
accum = findnum( name, a ); //呼叫findnum函式,並把找到幾個聯絡人賦給accum
if( accum == 0 )
else if( accum == 1 )
else if( accum > 1 )
printf("請輸入要刪的人的編號:");
scanf("%d",&temp);
coverdata(temp);
}printf("是否繼續刪除? (y/n) :");
__fpurge(stdin);
c = getchar();
}while( c == 'y' );
}void modify( int j )//定義修改函式
case 2:
case 3:
case 4:
case 5:
default:printf("輸入錯誤!\n");
}}void revise()//定義修改資訊函式
{
OC簡易通訊錄
addressbook.m implementation addressbook 重寫初始化方法 instancetype init return self instancetype init return self 新增新聯絡人 void addcontact contact contact el...
簡易通訊錄(檔案版)
第二個模組便是我們的測試函式,測試函式便可以實現我們的選單列印,同時由我們接收不同的值便可以實現不同的操作,就是相應的方法的實現,這裡很明顯可以通過乙個switch語句來進行控制。第三個模組便是我們的方法實現的函式,將模組2裡定義的型別為通訊錄的位址傳到各個方法裡,這樣便可以實現對通訊錄的操作。in...
簡易通訊錄的實現
define crt secure no warnings include include include 1 實現乙個通訊錄 通訊錄可以用來儲存1000個人的資訊,每個人的資訊包括 姓名 性別 年齡 字串 住址 提供方法 1.新增聯絡人資訊 2.刪除指定聯絡人資訊 3.修改指定聯絡人資訊 4.查詢...