fflush(标准输入) 在Ubuntu (Linux的)

编程的C / C 你经常会遇到 漂移现象命令 (没能输入数据). 要解决此问题,您使用ffulsh(标准输入) 清除缓冲区. 但在Linux不具有该功能, 请它与命令替换

__fpurge(标准输入);

代码示例:

#include <stdio.h>	// io
#include <stdio_ext.h> // __fpurge(stdin);
int main() {
	int x;
	char s[100];
	
	// scan a number
	printf("enter number x = ");
	scanf("%d", &x);
	
	// clear stdin
	__fpurge(stdin);
	
	// scan a string
	printf("enter a string: ");
	gets(s);
	
	printf("number is %d \nstring is %s\n", x,s);
	return 0;
}
enter number x = 7826
enter a string: nguyen van quan
number is 7826 
string is nguyen van quan

阅读更多 得到() 和fget() 在C / C