fprintf与stderr、stdout的使用

#include <stdio.h>

void main()
{
fprintf(stderr,"soyo8888!");
fprintf(stdout,"soyo15can't open it !\n");
printf("soyocan't open it!\n");
}

---------------------------------------------

上面程序编译成fprint文件,运行显示如下:
soyo8888Can't open it! soyo15Can't open it! soyoCan't open it!

若将输入重定向到一个temp.txt文件中,运行:./fprint >temp.txt 结果如下:
soyo8888Can't open it!
查看temp.txt文件内容为:
soyo15Can't open it!
soyoCan
't open it! 说明: stdout -- 标准输出设备 (printf("..")) 同 stdout。 stderr -- 标准错误输出设备 两者默认向屏幕输出。 但如果用转向标准输出到磁盘文件,则可看出两者区别。stdout输出到磁盘文件,stderr在屏幕。 strerr是作为程序运行过程中的错误显示出来的,若想将它重写向到某文件中,需要运行如下命令: ./fprint 2>temp.txt 这样运行结果就为: soyo15Can't open it!
soyoCan
't open it! 查看temp.txt文件的内容是: soyo8888Can't open it!

 

posted @ 2017-09-10 11:44  soyosuyang  阅读(1131)  评论(0编辑  收藏  举报