【发布时间】:2017-05-17 05:13:29
【问题描述】:
这是我的程序。
#include <stdio.h>
#include <stdlib.h>
int main()
{
printf("Hello\n");
system("uname");
return 0;
}
这是输出。
$ gcc foo.c
$ ./a.out
Hello
Linux
但是,如果我将程序的输出重定向到文件,我会看到输出的顺序是相反的,即 Linux 在 Hello 之前打印。
$ ./a.out > out.txt
$ cat out.txt
Linux
Hello
为什么涉及重定向时输出的顺序不同?
【问题讨论】:
标签: c linux output io-redirection