函数定义:
void perror(const char *s); perror ("open_port");
函数说明:
perror()用来将上一个函数发生错误的原因输出到标准设备(stderr)。参数 s 所指的字符串会先打印出,后面再加上错误原因字符串。此错误原因依照全局变量errno(这里的说法不准确,errno是一个宏,该宏返回左值) 的值来决定要输出的字符串。
在库函数中有个errno变量,每个errno值对应着以字符串表示的错误类型。当你调用”某些”函数出错时,该函数已经重新设置了errno的值。perror函数只是将你输入的一些信息和现在的errno所对应的错误一起输出。
示例:
#include <stdio.h>
int main() {
FILE* fp;
fp = fopen("testfile", "r+");
if ( NULL == fp ){
perror("testfile");
}
return 0;
输出:
testfile: No such file or directory
testfile为perror函数中的字符串;后面所接的字符串就是调用调用这个函数出错时,该函数重新设置的errno的值。