linux函数代码操练---错误处理

基础知识

strerror函数
char* strerror(int errnum);
perror函数
void perror(const char* s);

将错误代码映射为字符串

错误代码取值
错误代码的取值和含义都列在error.h中
EPERM 操作不允许
ENOENT 文件或者目录不存在
EINTR 系统调用中断
EIO I/O错误
EBUSY 设备或者资源忙
EEXIST 文件存在
EINVAL 无效参数
EMFILE 打开的文件过多
ENODEV 设备不存在
EISDIR 是一个目录
ENOTDIR 不是一个目录
strerror函数翻译成程序员可以理解的错误信息。
程序截图
linux函数代码操练---错误处理
运行结果
linux函数代码操练---错误处理
说明
这里模拟了一下讲一个错误代码翻译成错误信息,成功返回指向该错误信息的指针,否则返回NULL。在实际应用过程中,通常要自己捕获错误代码。

#

程序截图
linux函数代码操练---错误处理
运行结果
linux函数代码操练---错误处理
说明
程序打印出指定函数的错误信息。注意errno量与哪一个函数有关,一般在函数运行完毕后马上检查