#include <stdio.h>int main(){int aa;aa=-9;printf("%c,",aa);//这里有逗号fflush(stdout);printf("%d",1);}输出是?1 。我猜‘,’因为属于aa的残余字节而没有被读取,而stdout没有起到清理输出缓冲区的作用,是不是我的编译器有问题?#include <stdio.h>int main(){int aa;aa=-9;printf("%c\n,",aa);//这里有逗号printf("%d",1);}输出是?
1 回答
Qyouu
TA贡献1786条经验 获得超11个赞
清除标准输入(通常是键盘)的缓存。
的scanf()函数接收输入数据,一个情况下,输入数据结束后,当(不是scanf函数的末尾,scanf函数只有数据在每个数据字段,之后按Enter键结束)。
①案件的空间,“输入”,“跳格”按钮。
②宽度的情况下结束。
③如非法入境。
键盘缓冲区可能会有残留信息的问题。
的scanf()函数应该只扫描标准输入流,其余的信息是必要的,以解决在scanf中的标准输入
()函数后添加FFLUSH(标准输入)。
平齐(标准输入)刷新标准输入缓冲区,废弃
FFLUSH(标准输出)刷新标准输出缓冲区的东西输入缓冲器,对事物的输出缓冲器输出到标准输出设备上。
- 1 回答
- 0 关注
- 216 浏览
添加回答
举报
0/150
提交
取消
