我读过perror()和printf()写入终端屏幕.但是当printf()写入stdout时,perror()会写入stderr.因此,要打印错误,为什么在printf()可以执行时使用perror().
写入stdout或stderr并不要求写入终端屏幕 – 这取决于实现(因为并非所有系统都有终端).写入stdout和stderr也没有要求写入同一设备(例如,一个可以重定向到文件,而另一个被重定向到管道).
perror()将通过内置的错误代码含义知识实现,由静态错误代表,由标准库中的各种函数用来报告错误情况.特定值的含义是实现定义的(即它们在编译器和库之间变化).