首页 > 编程知识 正文

storage是什么意思,perror函数有什么用

时间:2023-05-03 23:43:41 阅读:262143 作者:955

(1) perror
头文件:stdio.h
void perror(const char *msg);
它是基于errno的当前值,在标准错上产生一条出错信息,然后返回。
它先输出由msg字符串,然后是一个冒号后头接着对应于errno值的出错信息。
例: perror(“sendto”);
打印出:sendto: Permission denied
(2)strerror
头文件:string.h
char * strerror(int errnum);
此函数将errnum(它通常就说errno值)映射为一个出错信息字符串,并返回错误此字符串
(2.1) 我们看errno的值:
在头文件: include errno.h
例:
printf(“errno is: %dn”,errno);
printf(“errno is: %dn”,strerror(errno));
  结果:errno is 13
   Permission denied
(3)perror和strerror区别和联系:
可以看出:
(3.1)perror和strerror都是根据errno的值打印错误信息的。
(3.2)perror是将errno对应的错误消息的字符串打印到标准错误输出上,即stderr或2上,若你的程序将标准错误输出重定向到/dev/null,那就看不到了,就不能用perror了。
而 strerror的作用只是将errno对应的错误消息字符串返回.你可以自己决定咋样处理字符串,比如可以存到日志,也可以直接printf出来。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。