当前位置: 技术问答>linux和unix
linux c 无法输出!
来源: 互联网 发布时间:2017-04-04
本文导语: 我在Linux的主函数编写了这种类似的代码: while(1) { printf("hfjj"); sleep(1); } 当运行结果是,程序并没有输出,采用Ctrl +z 后,程序就僵死了。 不知是什么原因? 如果在输出后面加上 n ,程序就正常显示了。 不...
我在Linux的主函数编写了这种类似的代码:
while(1)
{
printf("hfjj");
sleep(1);
}
当运行结果是,程序并没有输出,采用Ctrl +z 后,程序就僵死了。
不知是什么原因?
如果在输出后面加上 n ,程序就正常显示了。
不晓得是什么问题,还忘高手指教一二。小弟在此谢过。
while(1)
{
printf("hfjj");
sleep(1);
}
当运行结果是,程序并没有输出,采用Ctrl +z 后,程序就僵死了。
不知是什么原因?
如果在输出后面加上 n ,程序就正常显示了。
不晓得是什么问题,还忘高手指教一二。小弟在此谢过。
|
printf 行缓冲 fflush可以刷新缓冲. 或者perror,没有行缓冲
|
printf是行缓冲的,缓冲区未满的话,是不会输出的
while(1)
{
printf("hfjj"); //写到缓冲区stdout里了,
sleep(1);
}
可以把printf里的内容改长点,sleep时间短点,缓冲区满了的话,数据就写出来了
while(1)
{
printf("hfjj"); //写到缓冲区stdout里了,
sleep(1);
}
可以把printf里的内容改长点,sleep时间短点,缓冲区满了的话,数据就写出来了
|
printf("hfjj"); ==== > puts("hfjj"); 或 printf("hfjjn");