errno 상수

#include <errno.h>

설명

Errno 값은 할당 된 상수 errno 다양 한 오류 조건에 있습니다.

ERRNO입니다.H 포함의 정의 errno 값입니다.그러나, ERRNO에 제공 되는 모든 정의가 있습니다.H는 32 비트 Windows 운영 체제에서 사용 됩니다.일부 ERRNO의 값입니다.H는 UNIX 제품군의 운영 체제와의 호환성을 제공 합니다.

Errno 32 비트 Windows 운영 체제에서 값은 하위 집합의 값을 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
    실행 형식 오류입니다.실행 수 없습니다 나는 실행 파일이 파일 형식이 잘못 되었습니다. 파일을 실행 하려고 했습니다.

  • 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]

참고 항목

참조

전역 상수