转自: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