errno stałych
#include <errno.h>
Uwagi
Errno wartości są przypisane do stałych errno z różnych warunków błędów.
ERRNO.H zawiera definicje errno wartości.Jednakże, nie wszystkie definicje podane w ERRNO.H są używane w 32-bitowych systemach operacyjnych Windows.Niektóre wartości w ERRNO.H są obecne, aby zachować zgodność z systemów operacyjnych z rodziny UNIX.
Errno wartości 32-bitowego systemu operacyjnego Windows są podzbiorem wartości dla errno w systemach XENIX.W ten sposób errno wartość nie jest niekoniecznie taka sama, jak kod błędu rzeczywiste, zwrócony przez wywołanie systemowe z systemów operacyjnych Windows.Aby uzyskać dostęp do systemu operacyjnego rzeczywisty kod błędu, należy użyć _doserrno zmienną, która zawiera tę wartość.
Następujące errno wartości są obsługiwane:
ECHILD
Nie uruchamiane procesy.EAGAIN
Nie więcej procesów.Próba utworzenia nowego procesu nie powiodło się, ponieważ nie istnieją żadne więcej gniazd procesu lub jest za mało pamięci lub osiągnięto maksymalnego poziomu zagnieżdżenia.E2BIG
Lista argumentów jest za długa.EACCES
Odmowa uprawnień.Ustawienie uprawnienia do pliku nie zezwala na dostęp określony.Ten błąd oznacza, że podjęto próbę dostępu do pliku (lub, w niektórych przypadkach katalogu) w sposób niezgodny z atrybutów pliku.Na przykład błąd może wystąpić podczas próby odczytu z pliku, który nie jest otwarty, otwórz istniejący plik tylko do odczytu do zapisu lub otwórz katalog zamiast pliku.W wersjach systemu operacyjnego MS-DOS 3.0 i nowsze EACCES może również wskazywać blokowania lub naruszenie zasad współużytkowania.
Ten błąd może również wystąpić w przypadku próby zmiany nazwy pliku lub katalogu lub usunąć istniejący katalog.
EBADF
Zły numer pliku.Istnieją dwie możliwe przyczyny: 1) deskryptora określony plik nie jest prawidłową wartością lub nie odnosi się do otwartego pliku.2) Podjęto próbę zapisu do pliku lub urządzenia, otwarty dostęp tylko do odczytu.EDEADLOCK
Wystąpiłoby zakleszczenie zasobu.Argument funkcji matematycznych nie jest w domenie funkcji.IDUMEA
Argument matematyczny.EEXIST
Istnieją pliki.Została uczyniona próba do utworzenia pliku, który już istnieje.Na przykład _O_CREAT i _O_EXCL flagi są określone w _open rozmowy, ale nazwany plik już istnieje.EILSEQ
Nielegalne sekwencja bajtów (na przykład, w ciągu MBCS).EINVAL
Nieprawidłowy argument.Nieprawidłowa wartość zostało wydane dla jednego z argumentów funkcji.Na przykład, wartość podana dla pochodzenia podczas pozycjonowania wskaźnika pliku (z wywołanie do fseek) jest przed rozpoczęciem tego pliku.EMFILE
Zbyt wiele otwartych plików.Nie więcej deskryptorów plików są dostępne, więc można otworzyć więcej plików.ENOENT
Nie ma takiego pliku lub katalogu.Określony plik lub katalog nie istnieje lub nie można odnaleźć.Ten komunikat może występować w każdym przypadku, gdy określony plik nie istnieje lub składnik ścieżki nie określa istniejący katalog.ENOEXEC
Błąd formatu pliku wykonywalnego.Podjęto próbę wykonania pliku, który nie jest wykonywalny lub że ma nieprawidłowy format pliku wykonywalnego.ENOMEM
Za mało core.Za mało pamięci jest dostępna dla próby operatora.Na przykład, ten komunikat może zostać dostępnych do wykonywania procesu podrzędnego jest za mało pamięci lub gdy przydział żądania w _getcwd wywołania nie mogą być spełnione.ENOSPC
Nie miejsca na urządzeniu.Więcej miejsca do pisania jest dostępna na urządzeniu (na przykład, gdy dysk jest pełny).ERANGE
Wynik jest za duży.Argument funkcji matematycznych jest zbyt duży, wynikające z utraty znaczenia w wyniku częściowego lub całkowitego.Ten błąd może wystąpić w innych funkcji, gdy argument jest większy niż oczekiwano (na przykład, gdy buforu argument _getcwd jest dłuższy, niż przewidywano).EXDEV
Łącze między urządzeniami.Podjęto próbę, aby przenieść plik do innego urządzenia (za pomocą zmienić funkcji).STRUNCATE
Ciąg, kopia lub złączenie spowodowało obcięty łańcuch.See _TRUNCATE.
Następujące wartości są obsługiwane dla zachowania zgodności z Posix.Są one wymagane wartości w systemach innych niż 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]