个人记录:
最近使用eclipse编写C语言代码时出现scanf与printf顺序的错乱问题,网上搜索资料:两个方法解决,
1、方法一:设置缓冲区为空,即没有缓冲区。具体是在printf之前添加: setvbuf(stdout,NULL,_IONBF,0);设置缓冲区为空。
例:
int main(void)
{
…
setvbuf(stdout,NULL,_IONBF,0);
Printf(“….”);
scanf(……);
……
}
2、方法二:每执行printf之后,强制缓冲区。具体是在每句printf之后添加:fflush(stdout);
例:
int main(void)
{
…
printf(“….”);
fflush(stdout);
…
scanf(……);
printf(“….”);
fflush(stdout);
scanf(…);
……
}
具体可请参见:http://blog.csdn.net/wo17fang/article/details/46363975
eclipse C/C++执行scanf优先于printf
最新推荐文章于 2023-07-18 21:09:36 发布