C语言 fprintf()和printf()的区别
两个函数定义都是在stdio.h中 : 是输入输出的头文件


可以看出fprintf()中臂printf()多了第一个参数,
这个就是流.

在linux中:
0:与进程的标准输入关联; STDIN_FILENO
1:与标准输出关联; STDUOT_FILENO
2:与标准错误关联; STDERR_FIENO

printf()是fprintf()的一种特殊情况,
printf()相当于fprintf()中第一个参数赋值为stdout,就是标准输出的意思.
例如(下面两个是等效的):
fprintf(stdout, "hello world.\n");
printf("hello world.\n")

标准输出(stdout),标准错误输出(stderr)
默认都是输出到屏幕.
可以把标准输出或错误输出进行重定向.
比如:
./ fprint 2>err.txt
这个时候,错误输出就不会打印到屏幕,而是会到err.txt文件中.