fflush(stdin)与fflush(stdou)
综合网上资料和自己的实践,简单谈一下c语言中对fflush(stdin)与fflush(stdout)的认识。
fflush()的作用是用来刷新缓冲区,fflush(stdin)刷新标准输入缓冲区,把输入缓冲区里的东西丢弃;fflush(stdout)刷新标准输出缓冲区,把输出缓冲区里的东西强制打印到标准输出设备上。
fflush(stdin)不太常用,在有些编译器中是错误的用法,可以用以下方法替代:
while(getchar()!='/n');
fflush(stdout)在单进程程序中作用不大,但在多进程程序中很有用。程序的输出内容一般不会立即输出,而是在程序结束后再输出。fflush(stdout)会强制每次printf()都立即显示在标准输出设备上。
对C语言研究还不深,以上认识如有错误之处,还请高手不吝赐教!