一、介绍
由于很多系统调用函数调用出错的时候不仅仅是返回值判断还会设置errno全局共用的参数,所以这里总结errno各个参数的代表错误的含义,并且切记如果系统调用会改变errno变量,调用前要手动初始化 errno = 0, 包含的头文件是<errno.h>
<errno.h> 包含了:
#include <bits/errno.h>
#include <features.h>
extern int errno;
extern char *program_invocation_name, *program_invocation_short_name; //还记得吗?
typedef int error_t;
#include <features.h>
这个头文件定义了当前系统相关的很多宏,我们看各种头文件的时候看到各种宏是否定义判断
基本都在这里
举例:
# undef _LARGEFILE64_SOURCE
# define _LARGEFILE64_SOURCE 1 // 当前系统支持大文件
#include <bits/errno.h> 包含了:
#include <linux/errno.h> 包含了:
./asm-generic/errno.h 包含了
./asm-generic/errno-base.h
./asm-generic/er