Namensräume
Varianten
Aktionen

Fehlernummern

Von cppreference.com
< c‎ | error

Jede der in <errno.h> definierten Makros expandiert zu einem ganzzahligen konstanten Ausdruck vom Typ int mit einem eindeutigen positiven Wert. Die folgenden Konstanten sind von ISO C definiert. Die Implementierung kann weitere definieren, solange sie mit 'E' gefolgt von Ziffern oder Großbuchstaben beginnen.

Definiert in Header <errno.h>
EDOM
Mathematik-Argument außerhalb des Definitionsbereichs der Funktion
(Makro-Konstante)
EILSEQ
(C95)
Ungültige Byte-Sequenz
(Makro-Konstante)
ERANGE
Ergebnis zu groß
(Makro-Konstante)

Inhalt

[bearbeiten] Anmerkungen

Viele zusätzliche errno-Konstanten sind von POSIX und der C++-Standardbibliothek definiert, und einzelne Implementierungen können noch weitere definieren, z. B. errno(3) unter Linux oder intro(2) unter BSD und OS X.

[bearbeiten] Beispiel

#include <errno.h>
#include <math.h>
#include <stdio.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));
}

Mögliche Ausgabe

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

[bearbeiten] Referenzen

  • C23-Standard (ISO/IEC 9899:2024)
  • 7.5/2 Fehler <errno.h> (S. TBD)
  • C17-Standard (ISO/IEC 9899:2018)
  • 7.5/2 Fehler <errno.h> (S. TBD)
  • C11-Standard (ISO/IEC 9899:2011)
  • 7.5/2 Fehler <errno.h> (S. 205)
  • C99-Standard (ISO/IEC 9899:1999)
  • 7.5/2 Fehler <errno.h> (S. 186)
  • C89/C90-Standard (ISO/IEC 9899:1990)
  • 4.1.3 Fehler <errno.h>

[bearbeiten] Siehe auch

Makro, das zur POSIX-kompatiblen, Thread-lokalen Fehlernummern-Variable expandiert
(Makrovariable) [bearbeiten]
zeigt einen Zeichenstring, der dem aktuellen Fehler entspricht, nach stderr an
(Funktion) [bearbeiten]
gibt eine Textversion eines gegebenen Fehlercodes zurück
(Funktion) [bearbeiten]
C++-Dokumentation für Fehlernummern