extern FILE *stdin;
extern FILE *stdout;
extern FILE *stderr;
//man
1.stdin
*0;
*标准输入流;
2.stdout
*1;
*标准输出流;
3.stderr
*2;
*标准错误输出流
++++++++++(extend)
1.//man
Each
2.//csdn
stderr与stdin,stdout一样,是流。
3.//csdn
stdin,stdout可以重定向到文件,stderr输出到屏幕;
4.//百度知道
fprintf(stderr, "Can't open it!\n");
fprintf(stdout, "Can't open it!\n");
printf("Can't open it!\n");
这3句效果不是一样啊,有什么区别吗?
提问者: 假设还是如果 - 试用期 二级
最佳答案
有区别。
stdout -- 标准输出设备 (printf("..")) 同 stdout。
stderr -- 标准错误输出设备
两者默认向屏幕输出。
但如果用转向标准输出到磁盘文件,则可看出两者区别。stdout输出到磁盘文件,stderr在屏幕。
例如:
my.exe
Can't open it!
Can't open it!
Can't open it!
转向标准输出到磁盘文件tmp.txt
my.exe > tmp.txt
Can't open it!
用TYPE 看 tmp.txt的内容:
TYPE tmp.txt
Can't open it!
Can't open it!
5.//csdn
c的话,错误处理函数有assert,clearerr,dosexterr,ferror,harderr,hardresume,matherr,perror,strerror
6.//百度知道
请问:
当文件指针fp返回NULL值而要提示出错信息时,
7.csdn
stderr,stdout
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/minothing/archive/2009/10/29/4744640.aspx