清空输入缓冲区fflush()
生活随笔
收集整理的這篇文章主要介紹了
清空输入缓冲区fflush()
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
轉自:http://blog.csdn.net/21aspnet/article/details/174326
scanf( )函數可以接收輸入的換行符,'\n',(asci為10),利用函數fflush(stdin),可以清空輸入內存緩沖區。
?
// function name fflush // 清空一個流 ,2014--03--29 #include <stdio.h> void main() {char ch ;printf("Enter a character :\n"); scanf("%c",&ch); // 在這里int scanf(char *format[.argument]...) 函數scanf()可以接受換行符的輸入fflush(stdin);printf("character ch = %c\n",ch );printf("character ch = (asci)%d\n",(int)ch);char buffer[40];printf("Enter a line : \n");scanf("%s",buffer );printf("buffer = %s\n",buffer ); }?
當直接敲擊enter鍵時,運行情況為:
?
當直接輸入zhangsan lisi 時,顯示為:
當把fflush(stdin);注釋掉時,輸入zhangsan lisi顯示為:
可以看到,沒有輸入buffer ,就直接顯示buffer為hangsan
可以得出,fflush(stdin);直接清空輸入內存緩沖區。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? // ?2014 --03--29
?
總結
以上是生活随笔為你收集整理的清空输入缓冲区fflush()的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 吴恩达《机器学习》学习笔记十四——应用机
- 下一篇: 优先队列priority_queue的使