fflush()也可用于标准输入(stdin)和标准输出(stdout),用来清空标准输入输出缓冲区。stdin 是 standard input 的缩写,即标准输入,一般是指键盘;标准输入缓冲区即是用来暂存从键盘输入的内容的缓冲区。stdout 是 standard output 的缩写,即标准输出,一般是指显示器;标准输出缓冲区即是用来暂存将要显示的内容的...
读到这里你应该差不多理解了,就是你的题中的两句scanf(相当于scanf("%*[^\n]%*c"))读到了你输入的abc,但是没有赋值给任何变量。然后到了gets(str4);读到了def赋值给str4,然后printf("%s\n", str4);后必然显示def。清空缓存区用fflush(stdin);这句代码。键盘输入的东西都是放在缓冲...