Spec-Zone.ru › C

Номера ошибок

Каждый из макросов, определенных в <errno.h>, раскрывается до целочисленной константы выражения типа int и с уникальным положительным значением. Следующие константы определены стандартом ISO C. Реализация может определить больше, при условии, что они начинаются с 'E' , за которым следуют цифры или заглавные буквы.

Определено в заголовке <errno.h>
EDOM
Математическое аргумент вне области определения функции
(макроконстанта)
EILSEQ
(C95)
Недопустимая последовательность байтов
(макроконстанта)
ERANGE
Результат слишком большой
(макроконстанта)

Примечания

Многие дополнительные константы errno определены стандартом POSIX и библиотекой стандартной C++, и отдельные реализации могут определить ещё больше, например, errno(3) в Linux или intro(2) в BSD и OS X.

Пример

#include <stdio.h>
#include <math.h>
#include <errno.h>
#include <string.h>
 
int main(void)
{
    errno = 0;
    printf("log(-1.0) = %f\n", log(-1.0));
    printf("%s\n\n",strerror(errno));
 
    errno = 0;
    printf("log(0.0)  = %f\n", log(0.0));
    printf("%s\n",strerror(errno));
}

Возможный вывод:

log(-1.0) = nan
Numerical argument out of domain
 
log(0.0)  = -inf
Numerical result out of range

Ссылки

  • Стандарт C11 (ISO/IEC 9899:2011):
    • 7.5/2 Ошибки <errno.h> (с. 205)
  • Стандарт C99 (ISO/IEC 9899:1999):
    • 7.5/2 Ошибки <errno.h> (с. 186)
  • Стандарт C89/C90 (ISO/IEC 9899:1990):
    • 4.1.3 Ошибки <errno.h>

См. также

errno
макрос, который раскрывается до POSIX-совместимой переменной для локальной ошибки потока
(макропеременная)
perror
отображает строку символов, соответствующую текущей ошибке, в stderr
(функция)
strerrorstrerror_sstrerrorlen_s
(C11)(C11)
возвращает текстовое представление заданного кода ошибки
(функция)
Документация C++ по Номерам ошибок

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/c/error/errno_macros

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API