Standard library header <cerrno>
From cppreference.net
Этот заголовок изначально находился в стандартной библиотеке C как <errno.h> .
Этот заголовок является частью библиотеки обработки ошибок .
Содержание |
Макросы
|
макрос, который раскрывается в POSIX-совместимую thread-local переменную для кода ошибки
(макрос-переменная) |
|
|
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)
(deprecated in 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 /* см. описание */ #define E2BIG /* см. описание */ // freestanding #define EACCES /* см. описание */ // freestanding #define EADDRINUSE /* см. описание */ // freestanding #define EADDRNOTAVAIL /* см. описание */ // freestanding #define EAFNOSUPPORT /* см. описание */ // freestanding #define EAGAIN /* см. описание */ // freestanding #define EALREADY /* см. описание */ // freestanding #define EBADF /* см. описание */ // freestanding #define EBADMSG /* см. описание */ // freestanding #define EBUSY /* см. описание */ // freestanding #define ECANCELED /* см. описание */ // freestanding #define ECHILD /* см. описание */ // freestanding #define ECONNABORTED /* см. описание */ // freestanding #define ECONNREFUSED /* см. описание */ // freestanding #define ECONNRESET /* см. описание */ // freestanding #define EDEADLK /* см. описание */ // freestanding #define EDESTADDRREQ /* см. описание */ // freestanding #define EDOM /* см. описание */ // freestanding #define EEXIST /* см. описание */ // freestanding #define EFAULT /* см. описание */ // freestanding #define EFBIG /* см. описание */ // freestanding #define EHOSTUNREACH /* см. описание */ // freestanding #define EIDRM /* см. описание */ // freestanding #define EILSEQ /* см. описание */ // freestanding #define EINPROGRESS /* см. описание */ // freestanding #define EINTR /* см. описание */ // freestanding #define EINVAL /* см. описание */ // freestanding #define EIO /* см. описание */ // freestanding #define EISCONN /* см. описание */ // freestanding #define EISDIR /* см. описание */ // freestanding #define ELOOP /* см. описание */ // freestanding #define EMFILE /* см. описание */ // freestanding #define EMLINK /* см. описание */ // freestanding #define EMSGSIZE /* см. описание */ // freestanding #define ENAMETOOLONG /* см. описание */ // freestanding #define ENETDOWN /* см. описание */ // freestanding #define ENETRESET /* см. описание */ // freestanding #define ENETUNREACH /* см. описание */ // freestanding #define ENFILE /* см. описание */ // freestanding #define ENOBUFS /* см. описание */ // freestanding #define ENODEV /* см. описание */ // freestanding #define ENOENT /* см. описание */ // freestanding #define ENOEXEC /* см. описание */ // freestanding #define ENOLCK /* см. описание */ // freestanding #define ENOLINK /* см. описание */ // freestanding #define ENOMEM /* см. описание */ // freestanding #define ENOMSG /* см. описание */ // freestanding #define ENOPROTOOPT /* см. описание */ // freestanding #define ENOSPC /* см. описание */ // freestanding #define ENOSYS /* см. описание */ // freestanding #define ENOTCONN /* см. описание */ // freestanding #define ENOTDIR /* см. описание */ // freestanding #define ENOTEMPTY /* см. описание */ // freestanding #define ENOTRECOVERABLE /* см. описание */ // freestanding #define ENOTSOCK /* см. описание */ // freestanding #define ENOTSUP /* см. описание */ // freestanding #define ENOTTY /* см. описание */ // freestanding #define ENXIO /* см. описание */ // freestanding #define EOPNOTSUPP /* см. описание */ // freestanding #define EOVERFLOW /* см. описание */ // freestanding #define EOWNERDEAD /* см. описание */ // freestanding #define EPERM /* см. описание */ // freestanding #define EPIPE /* см. описание */ // freestanding #define EPROTO /* см. описание */ // freestanding #define EPROTONOSUPPORT /* см. описание */ // freestanding #define EPROTOTYPE /* см. описание */ // freestanding #define ERANGE /* см. описание */ // freestanding #define EROFS /* см. описание */ // freestanding #define ESPIPE /* см. описание */ // freestanding #define ESRCH /* см. описание */ // freestanding #define ETIMEDOUT /* см. описание */ // freestanding #define ETXTBSY /* см. описание */ // freestanding #define EWOULDBLOCK /* см. описание */ // freestanding #define EXDEV /* см. описание */ // freestanding
Отчеты о дефектах
Следующие отчеты об изменениях поведения, влияющие на дефекты, были применены ретроактивно к ранее опубликованным стандартам C++.
| DR | Применяется к | Поведение в опубликованной версии | Корректное поведение |
|---|---|---|---|
| LWG 288 | C++98 |
макрос
EILSEQ
не был определён в
<cerrno>
|
определён |