Заголовок стандартной библиотеки <cerrno>
Этот заголовок изначально входил в стандартную библиотеку C как <errno.h>.
Этот заголовок является частью библиотеки обработки ошибок.
Макросы
| макрос, раскрывающийся в совместимую с POSIX потоково-локальную переменную номера ошибки (макропеременная) |
|
|
E2BIG
(C++11) | Слишком длинный список аргументов (макроконстанта) |
|
EACCES
(C++11) | Доступ запрещён (макроконстанта) |
|
EADDRINUSE
(C++11) | Адрес уже используется (макроконстанта) |
|
EADDRNOTAVAIL
(C++11) | Адрес недоступен (макроконстанта) |
|
EAFNOSUPPORT
(C++11) | Семейство адресов не поддерживается (макроконстанта) |
|
EAGAIN
(C++11) | Ресурс недоступен, повторите попытку (макроконстанта) |
|
EALREADY
(C++11) | Подключение уже выполняется (макроконстанта) |
|
EBADF
(C++11) | Неверный файловый дескриптор (макроконстанта) |
|
EBADMSG
(C++11) | Некорректное сообщение (макроконстанта) |
|
EBUSY
(C++11) | Устройство или ресурс заняты (макроконстанта) |
|
ECANCELED
(C++11) | Операция отменена (макроконстанта) |
|
ECHILD
(C++11) | Нет дочерних процессов (макроконстанта) |
|
ECONNABORTED
(C++11) | Соединение прервано (макроконстанта) |
|
ECONNREFUSED
(C++11) | В соединении отказано (макроконстанта) |
|
ECONNRESET
(C++11) | Соединение сброшено (макроконстанта) |
|
EDEADLK
(C++11) | Возникнет взаимная блокировка ресурсов (макроконстанта) |
|
EDESTADDRREQ
(C++11) | Требуется адрес назначения (макроконстанта) |
|
EDOM | Математический аргумент вне области определения функции (макроконстанта) |
|
EEXIST
(C++11) | Файл существует (макроконстанта) |
|
EFAULT
(C++11) | Неверный адрес (макроконстанта) |
|
EFBIG
(C++11) | Файл слишком велик (макроконстанта) |
|
EHOSTUNREACH
(C++11) | Узел недоступен (макроконстанта) |
|
EIDRM
(C++11) | Идентификатор удалён (макроконстанта) |
|
EILSEQ | Недопустимая последовательность байтов (макроконстанта) |
|
EINPROGRESS
(C++11) | Операция выполняется (макроконстанта) |
|
EINTR
(C++11) | Функция прервана (макроконстанта) |
|
EINVAL
(C++11) | Недопустимый аргумент (макроконстанта) |
|
EIO
(C++11) | Ошибка ввода-вывода (макроконстанта) |
|
EISCONN
(C++11) | Сокет подключён (макроконстанта) |
|
EISDIR
(C++11) | Является каталогом (макроконстанта) |
|
ELOOP
(C++11) | Слишком много уровней символических ссылок (макроконстанта) |
|
EMFILE
(C++11) | Значение файлового дескриптора слишком велико (макроконстанта) |
|
EMLINK
(C++11) | Слишком много ссылок (макроконстанта) |
|
EMSGSIZE
(C++11) | Сообщение слишком велико (макроконстанта) |
|
ENAMETOOLONG
(C++11) | Имя файла слишком длинное (макроконстанта) |
|
ENETDOWN
(C++11) | Сеть не работает (макроконстанта) |
|
ENETRESET
(C++11) | Соединение прервано сетью (макроконстанта) |
|
ENETUNREACH
(C++11) | Сеть недоступна (макроконстанта) |
|
ENFILE
(C++11) | В системе открыто слишком много файлов (макроконстанта) |
|
ENOBUFS
(C++11) | Нет доступного места в буфере (макроконстанта) |
|
ENODATA
(C++11) (устарел в C++23) | В очереди чтения заголовка STREAM нет доступных сообщений (макроконстанта) |
|
ENODEV
(C++11) | Такого устройства нет (макроконстанта) |
|
ENOENT
(C++11) | Такого файла или каталога нет (макроконстанта) |
|
ENOEXEC
(C++11) | Ошибка формата исполняемого файла (макроконстанта) |
|
ENOLCK
(C++11) | Нет доступных блокировок (макроконстанта) |
|
ENOLINK
(C++11) | Связь разорвана (макроконстанта) |
|
ENOMEM
(C++11) | Недостаточно места (макроконстанта) |
|
ENOMSG
(C++11) | Нет сообщения требуемого типа (макроконстанта) |
|
ENOPROTOOPT
(C++11) | Протокол недоступен (макроконстанта) |
|
ENOSPC
(C++11) | На устройстве не осталось места (макроконстанта) |
|
ENOSR
(C++11) (устарел в C++23) | Нет ресурсов STREAM (макроконстанта) |
|
ENOSTR
(C++11) (устарел в C++23) | Не является STREAM (макроконстанта) |
|
ENOSYS
(C++11) | Функция не поддерживается (макроконстанта) |
|
ENOTCONN
(C++11) | Сокет не подключён (макроконстанта) |
|
ENOTDIR
(C++11) | Не является каталогом (макроконстанта) |
|
ENOTEMPTY
(C++11) | Каталог не пуст (макроконстанта) |
|
ENOTRECOVERABLE
(C++11) | Состояние не подлежит восстановлению (макроконстанта) |
|
ENOTSOCK
(C++11) | Не является сокетом (макроконстанта) |
|
ENOTSUP
(C++11) | Не поддерживается (макроконстанта) |
|
ENOTTY
(C++11) | Недопустимая операция управления вводом-выводом (макроконстанта) |
|
ENXIO
(C++11) | Такого устройства или адреса нет (макроконстанта) |
|
EOPNOTSUPP
(C++11) | Операция не поддерживается для сокета (макроконстанта) |
|
EOVERFLOW
(C++11) | Значение слишком велико для хранения в типе данных (макроконстанта) |
|
EOWNERDEAD
(C++11) | Предыдущий владелец завершил работу аварийно (макроконстанта) |
|
EPERM
(C++11) | Операция не разрешена (макроконстанта) |
|
EPIPE
(C++11) | Канал разорван (макроконстанта) |
|
EPROTO
(C++11) | Ошибка протокола (макроконстанта) |
|
EPROTONOSUPPORT
(C++11) | Протокол не поддерживается (макроконстанта) |
|
EPROTOTYPE
(C++11) | Неверный тип протокола для сокета (макроконстанта) |
|
ERANGE | Результат слишком велик (макроконстанта) |
|
EROFS
(C++11) | Файловая система доступна только для чтения (макроконстанта) |
|
ESPIPE
(C++11) | Недопустимое позиционирование (макроконстанта) |
|
ESRCH
(C++11) | Такого процесса нет (макроконстанта) |
|
ETIME
(C++11) (устарел в C++23) | Тайм-аут потока ioctl() (макроконстанта) |
|
ETIMEDOUT
(C++11) | Истекло время ожидания соединения (макроконстанта) |
|
ETXTBSY
(C++11) | Текстовый файл занят (макроконстанта) |
|
EWOULDBLOCK
(C++11) | Операция заблокировала бы выполнение (макроконстанта) |
|
EXDEV
(C++11) | Ссылка между устройствами (макроконстанта) |
Примечания
Хотя заголовок <cerrno> основан на заголовке стандартной библиотеки C <errno.h>, большинство макросов, определённых в <cerrno>, были заимствованы C++ из стандарта POSIX, а не из стандартной библиотеки C.
Обзор
#define errno /* see description */ #define E2BIG /* see description */ // freestanding #define EACCES /* see description */ // freestanding #define EADDRINUSE /* see description */ // freestanding #define EADDRNOTAVAIL /* see description */ // freestanding #define EAFNOSUPPORT /* see description */ // freestanding #define EAGAIN /* see description */ // freestanding #define EALREADY /* see description */ // freestanding #define EBADF /* see description */ // freestanding #define EBADMSG /* see description */ // freestanding #define EBUSY /* see description */ // freestanding #define ECANCELED /* see description */ // freestanding #define ECHILD /* see description */ // freestanding #define ECONNABORTED /* see description */ // freestanding #define ECONNREFUSED /* see description */ // freestanding #define ECONNRESET /* see description */ // freestanding #define EDEADLK /* see description */ // freestanding #define EDESTADDRREQ /* see description */ // freestanding #define EDOM /* see description */ // freestanding #define EEXIST /* see description */ // freestanding #define EFAULT /* see description */ // freestanding #define EFBIG /* see description */ // freestanding #define EHOSTUNREACH /* see description */ // freestanding #define EIDRM /* see description */ // freestanding #define EILSEQ /* see description */ // freestanding #define EINPROGRESS /* see description */ // freestanding #define EINTR /* see description */ // freestanding #define EINVAL /* see description */ // freestanding #define EIO /* see description */ // freestanding #define EISCONN /* see description */ // freestanding #define EISDIR /* see description */ // freestanding #define ELOOP /* see description */ // freestanding #define EMFILE /* see description */ // freestanding #define EMLINK /* see description */ // freestanding #define EMSGSIZE /* see description */ // freestanding #define ENAMETOOLONG /* see description */ // freestanding #define ENETDOWN /* see description */ // freestanding #define ENETRESET /* see description */ // freestanding #define ENETUNREACH /* see description */ // freestanding #define ENFILE /* see description */ // freestanding #define ENOBUFS /* see description */ // freestanding #define ENODEV /* see description */ // freestanding #define ENOENT /* see description */ // freestanding #define ENOEXEC /* see description */ // freestanding #define ENOLCK /* see description */ // freestanding #define ENOLINK /* see description */ // freestanding #define ENOMEM /* see description */ // freestanding #define ENOMSG /* see description */ // freestanding #define ENOPROTOOPT /* see description */ // freestanding #define ENOSPC /* see description */ // freestanding #define ENOSYS /* see description */ // freestanding #define ENOTCONN /* see description */ // freestanding #define ENOTDIR /* see description */ // freestanding #define ENOTEMPTY /* see description */ // freestanding #define ENOTRECOVERABLE /* see description */ // freestanding #define ENOTSOCK /* see description */ // freestanding #define ENOTSUP /* see description */ // freestanding #define ENOTTY /* see description */ // freestanding #define ENXIO /* see description */ // freestanding #define EOPNOTSUPP /* see description */ // freestanding #define EOVERFLOW /* see description */ // freestanding #define EOWNERDEAD /* see description */ // freestanding #define EPERM /* see description */ // freestanding #define EPIPE /* see description */ // freestanding #define EPROTO /* see description */ // freestanding #define EPROTONOSUPPORT /* see description */ // freestanding #define EPROTOTYPE /* see description */ // freestanding #define ERANGE /* see description */ // freestanding #define EROFS /* see description */ // freestanding #define ESPIPE /* see description */ // freestanding #define ESRCH /* see description */ // freestanding #define ETIMEDOUT /* see description */ // freestanding #define ETXTBSY /* see description */ // freestanding #define EWOULDBLOCK /* see description */ // freestanding #define EXDEV /* see description */ // freestanding
Отчёты об ошибках
Следующие отчёты об ошибках, изменяющие поведение, были применены задним числом к ранее опубликованным стандартам C++.
| DR | Применён к | Поведение согласно опубликованной версии | Корректное поведение |
|---|---|---|---|
| LWG 288 | C++98 | макрос EILSEQ не был определён в <cerrno> | определён |
См. также
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/header/cerrno