Namespaces
Variants

Standard library header <cerrno>

From cppreference.net
Standard library headers

Этот заголовок изначально находился в стандартной библиотеке 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> определён

Смотрите также