errno 值是常数分配给 errno 在各种错误状态的情况下。
ERRNO.H 包含 errno 值的定义。 但是,并非在 ERRNO.H 提供的所有定义用于 32 位 windows 操作系统。 在某些 ERRNO.H 的值存在保持与操作系统 UNIX 系列的兼容性。
在 32 位 windows 操作系统的 errno 值是的子集 errno 中 XENIX 系统。 因此, errno 值不一定是实际错误代码返回从 windows 操作系统调用的相同。 访问实际操作系统错误代码,使用 _doserrno 变量,包含该值。
下面 errno 值支持:
以下值对使用 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]