首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

linux上运作system函数时,printf信息未被打印,请高手讲解原因

2013-07-04 
linux上运行system函数时,printf信息未被打印,请高手讲解原因代码简单,如下:#include unistd.hint main(

linux上运行system函数时,printf信息未被打印,请高手讲解原因
代码简单,如下:
#include <unistd.h>
int main()
{
    printf("system kill");
    sleep(10);
    system("killall test");
    //system("ls -l");
    return 0;
}
注:test为这个程序的名字
问题如下:
①运行后,直接退出,没有打印出打印信息
②如果将killall行注释,用system("ls -l");则打印信息会在执行完ls -l命令后打印
原理请指明
③如果我想先打印出打印信息,应该怎么做?
[解决办法]


#include <unistd.h>
#include <stdio.h>
int main()
{
    printf("system kill\n");
    fflush(0);
    sleep(10);
    system("killall test");
    //system("ls -l");
    return 0;
}

[解决办法]
printf("system kill");你改成
printf("system kill\n");
数据还在缓冲里,你刷一下就出来了,(因为你直接杀死,还来不及把缓冲里的数据打印出来。)

热点排行