輸入緩衝區:ide
鍵盤->鍵盤緩衝區->輸入緩衝區->程序spa
輸入緩衝區清除的條件:只有當其中的內容被讀走的時候纔會清除指針
/**************************************************/字符串
/*輸入緩衝區*/get
/**************************************************/it
#include <stdio.h>io
int main()class
{stream
int a,b,c,d,e;程序
if(scanf("%d",&a)==0)
{
scanf("%*[^\n]");
scanf("%*c");
}
scanf("%d",&b);
scanf("%d",&c);
scanf("%d",&d);
scanf("%d",&e);
printf("%d %d %d %d %d\n",a,b,c,d,e);
return 0;
}
輸出緩衝區:
程序->輸出緩衝區->屏幕
條件:
<1>\n
<2>程序結束
<3>輸出緩衝區滿(4kb)
<4>人工刷新(fflush(stdout))
/***********************************************/
/*輸出緩衝區*/
/***********************************************/
#include <stdio.h>
int main()
{
printf("hello");
fflush(stdout);
while(1);
}
<1>char* gets(char*)從輸入緩衝區讀取一行
不考慮緩衝區的大小,可能溢出
<2>fgets(char* str,size_t size,FILE* stream)會在讀入字符串的後面自動加上'\0'
char* str:指向緩衝區的指針
size_t size:緩衝區的大小
FILE* stream:文件指針(stdin)