Заголовок стандартной библиотеки <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/w/cpp/header/cerrno