加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

perror()和printf()之间的区别

发布时间:2020-12-13 19:02:26 所属栏目:Linux 来源:网络整理
导读:我读过perror()和printf()写入终端屏幕.但是当printf()写入stdout时,perror()会写入stderr.因此,要打印错误,为什么在printf()可以执行时使用perror(). 最佳答案 printf()无法写入stderr. fprintf()可以. perror()总是如此. 写入stdout或stderr并不要求写入终

我读过perror()和printf()写入终端屏幕.但是当printf()写入stdout时,perror()会写入stderr.因此,要打印错误,为什么在printf()可以执行时使用perror().

最佳答案
printf()无法写入stderr. fprintf()可以. perror()总是如此.

写入stdout或stderr并不要求写入终端屏幕 – 这取决于实现(因为并非所有系统都有终端).写入stdout和stderr也没有要求写入同一设备(例如,一个可以重定向到文件,而另一个被重定向到管道).

perror()将通过内置的错误代码含义知识实现,由静态错误代表,由标准库中的各种函数用来报告错误情况.特定值的含义是实现定义的(即它们在编译器和库之间变化).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读