调用system函数时输出重定向,导致输出顺序错乱

1、问题

#include 
#include 
int main()
{
    printf("test1\n");
    system("date");
}

非常简单的代码,但在重定向后的结果却出乎意料,竟然和终端运行结果不同!

[jud@dspntp]$./a.out
test1
Wed Sep 30 16:49:44 CST 2015
[jud@dspntp]$./a.out >

你可能感兴趣的:(linux,c,输出重定向,system,fork,缓冲区)