perror 和 strerror 的区别
2012-08-30 17:44
295 查看
当系统执行代码出错时,会把错误码存在errno中。 errno在errno.h中定义好的。(出错时,系统会自己赋值,不用我们操心)
perror和strerror的区别
perror(const char * s)
执行perror函数,就会打印出错误信息,在stderr输出,信息格式如下
函数输出格式:
s (传进来的字符串) : 错误原因字符串 (这个字符串取决于errno的值)
而strerror函数是不会自己打印错误信息的,只是单纯的返回错误字符串,打不打印看程序员心情了,上面例子中是用printf打印出来的,跟strerror没关系。在网上搜了下,
有些博客说perror是在stderr输出的,strerror是在stdout输出的。这个是个误区,用printf输出当然是在stdout中输出了。
#include <stdio.h>// for printf() #include <errno.h>// for errno #include <string.h>//for strerror() int main() { errno = 3;// 随便给个数做测试 perror("err"); printf("\nstrerror:%s",strerror(errno)); }显示结果:
perror和strerror的区别
perror(const char * s)
执行perror函数,就会打印出错误信息,在stderr输出,信息格式如下
函数输出格式:
s (传进来的字符串) : 错误原因字符串 (这个字符串取决于errno的值)
而strerror函数是不会自己打印错误信息的,只是单纯的返回错误字符串,打不打印看程序员心情了,上面例子中是用printf打印出来的,跟strerror没关系。在网上搜了下,
有些博客说perror是在stderr输出的,strerror是在stdout输出的。这个是个误区,用printf输出当然是在stdout中输出了。
相关文章推荐
- perror()与strerror()的应用及区别 man手册查询
- perror 和 strerror 区别
- perror和strerror的区别
- perror和strerror的区别 http://blog.csdn.net/lalor/article/details/7555019
- 转:perror和strerror的区别
- perror和strerror的使用和区别
- perror 和 strerror 区别
- errno 与 perror()/strerror()函数
- linux系统编程之错误处理:perror,strerror和errno
- linux下错误的捕获:errno、strerror和perror的使用
- 关于C语言自带的错误机制,可选的提示错误函数perror(),strerror(errno),个人测试结果
- Linux系统编程之错误处理:perror,strerror和errno http://www.linuxidc.com/Linux/2013-07/87238.htm
- perror()与strerror()的应用
- 玩玩linux下的errno, perror, strerror
- perror和strerror的问题
- linux下的strerror和perror
- 关于errno与perror,strerror函数
- strerror() 和perror()函数
- errno , perror,strerror
- errno、perror() 和 strerror()