errno常数

#include 

 

 

errno 值是常数分配给 errno 在各种错误状态的情况下。

ERRNO.H 包含 errno 值的定义。 但是,并非在 ERRNO.H 提供的所有定义用于 32 位 windows 操作系统。 在某些 ERRNO.H 的值存在保持与操作系统 UNIX 系列的兼容性。

在 32 位 windows 操作系统的 errno 值是的子集 errno 中 XENIX 系统。 因此, errno 值不一定是实际错误代码返回从 windows 操作系统调用的相同。 访问实际操作系统错误代码,使用 _doserrno 变量,包含该值。

下面 errno 值支持:

ECHILD

未给出的过程。

EAGAIN

不处理。 尝试创建新进程失败,因为没有处理槽,或者没有足够的内存,或者最大嵌套级别已到达。

E2BIG

太长的参数列表。

EACCES

权限被拒绝。 文件的权限集不允许指定的访问。 此错误指示尝试访问一个文件 (或者,在某些情况下,一个目录) 将与文件属性不兼容的方法。

例如,该错误,当尝试从不处于打开状态时的文件读取,打开要编写的现有只读文件,或打开目录而不是文件。 在 MS-DOS 操作系统版本 3.0 下及更高版本中, EACCES 还可以指示锁定的或共享的冲突。

该错误还可能生成用于写入文件或目录重命名或移除现有目录。

EBADF

文件号错误。 有两种原因:1) 中指定的文件描述符不是有效的值也不引用打开文件。 2) 尝试对进行只读访问或设备编写打开的文件。

EDEADLOCK

资源会发生死锁。 为算术函数的参数不在函数的字段。

EDOM

算术参数。

EEXIST

文件存在。 尝试创建已存在的文件。 例如, _O_CREAT_O_EXCL 标志。 _open 指定调用,但是,名称文件已存在。

EILSEQ

非法字节序列 (例如,在 MBCS 字符串)。

EINVAL

无效参数。 无效值为之一传递给定函数。 例如,对于原点给定的值,在确定文件指针 (传递给 fseek的调用) 是文件的开头之前。

EMFILE

许多打开文件。 没有其他文件描述符不可用,因此,不能打开没有其他文件。

ENOENT

如果没有这样的文件或目录。 使用指定的文件或目录不存在或无法找到。 此消息会发生,只要已指定的文件不存在或路径的元素不指定某个现有目录。

ENOEXEC

exec 格式错误。 尝试执行不可执行文件或具有无效可执行 (pe) 文件格式的文件。

ENOMEM

没有足够的核心。 没有足够的内存为所尝试的运算符可用。 例如,此消息时,会发生内存不足可用于执行子进程时,或者,在 _getcwd 的分配请求调用时无法得到满足。

ENOSPC

在计算机预留的没有空格。 编写没有其他空间不在计算机 (例如,那么,当磁盘已满时)。

ERANGE

太大结果。 为算术函数的参数太大,从而部分或完全有效位丢失中的位数。 此错误在其他功能,也可能作为参数比预期大时 (例如,那么,当对 _getcwd缓冲区 参数比预期长) 时。

EXDEV

跨模式链接。 尝试将文件移动到不同的计算机 (使用 重命名 函数)。

STRUNCATE

字符串复制或串联生成一个被截断的字符串。 请参见 _TRUNCATE

以下值对使用 POSIX 的兼容性支持。 它们是在非 POSIX 系统需要的值。

复制
#define E2BIG [argument list too long]
#define EACCES [permission denied]
#define EADDRINUSE [address in use]
#define EADDRNOTAVAIL [address not available]
#define EAFNOSUPPORT [address family not supported]
#define EAGAIN [resource unavailable try again]
#define EALREADY [connection already in progress]
#define EBADF [bad file descriptor]
#define EBADMSG [bad message]
#define EBUSY [device or resource busy]
#define ECANCELED [operation canceled]
#define ECHILD [no child process]
#define ECONNABORTED [connection aborted]
#define ECONNREFUSED [connection refused]
#define ECONNRESET [connection reset]
#define EDEADLK [resource deadlock would occur]
#define EDESTADDRREQ [destination address required]
#define EDOM [argument out of domain]
#define EEXIST [file exists]
#define EFAULT [bad address]
#define EFBIG [file too large]
#define EHOSTUNREACH [host unreachable]
#define EIDRM [identifier removed]
#define EILSEQ [illegal byte sequence]
#define EINPROGRESS [operation in progress]
#define EINTR [interrupted]
#define EINVAL [invalid argument]
#define EIO [io error]
#define EISCONN [already connected]
#define EISDIR [is a directory]
#define ELOOP [too many synbolic link levels]
#define EMFILE [too many files open]
#define EMLINK [too many links]
#define EMSGSIZE [message size]
#define ENAMETOOLONG [filename too long]
#define ENETDOWN [network down]
#define ENETRESET [network reset]
#define ENETUNREACH [network unreachable]
#define ENFILE [too many files open in system]
#define ENOBUFS [no buffer space]
#define ENODATA [no message available]
#define ENODEV [no such device]
#define ENOENT [no such file or directory]
#define ENOEXEC [executable format error]
#define ENOLCK [no lock available]
#define ENOLINK [no link]
#define ENOMEM [not enough memory]
#define ENOMSG [no message]
#define ENOPROTOOPT [no protocol option]
#define ENOSPC [no space on device]
#define ENOSR [no stream resources]
#define ENOSTR [not a stream]
#define ENOSYS [function not supported]
#define ENOTCONN [not connected]
#define ENOTDIR [not a directory]
#define ENOTEMPTY [directory not empty]
#define ENOTRECOVERABLE [state not recoverable]
#define ENOTSOCK [not a socket]
#define ENOTSUP [not supported]
#define ENOTTY [inappropriate io control operation]
#define ENXIO [no such device or address]
#define EOPNOTSUPP [operation not supported]
#define EOTHER [other]
#define EOVERFLOW [value too large]
#define EOWNERDEAD [owner dead]
#define EPERM [operation not permitted]
#define EPIPE [broken pipe]
#define EPROTO [protocol error]
#define EPROTONOSUPPORT [protocol not supported]
#define EPROTOTYPE [wrong protocol type]
#define ERANGE [result out of range]
#define EROFS [read only file system]
#define ESPIPE [invalid seek]
#define ESRCH [no such process]
#define ETIME [stream timeout]
#define ETIMEDOUT [timed out]
#define ETXTBSY [text file busy]
#define EWOULDBLOCK [operation would block]
#define EXDEV [cross device link]

你可能感兴趣的:(Linux,APP)