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

前端之家收集整理的这篇文章主要介绍了perror()和printf()之间的区别前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

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

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

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

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

猜你在找的Linux相关文章