_get_doserrno
Pobiera wartość błędu zwróconą przez system operacyjny, zanim zostanie przetłumaczona na errno
wartość.
Składnia
errno_t _get_doserrno(
int * pValue
);
Parametry
pValue
Wskaźnik do liczby całkowitej, który ma zostać wypełniony bieżącą wartością makra globalnego _doserrno
.
Wartość zwracana
Jeśli zakończy się powodzeniem, zwraca zero; jeśli _get_doserrno
zakończy się niepowodzeniem, zwraca kod błędu. Jeśli pValue
parametr ma NULL
wartość , wywoływana jest nieprawidłowa procedura obsługi parametrów, zgodnie z opisem w temacie Weryfikacja parametrów. Jeśli wykonywanie jest dozwolone do kontynuowania, ta funkcja ustawia errno
wartość EINVAL
i zwraca wartość EINVAL
.
Uwagi
_doserrno
Makro globalne jest ustawione na zero podczas inicjowania CRT przed rozpoczęciem wykonywania procesu. Jest ona ustawiona na wartość błędu systemu operacyjnego zwróconą przez dowolne wywołanie funkcji na poziomie systemu, które zwraca błąd systemu operacyjnego i nigdy nie jest resetowane do zera podczas wykonywania. Podczas pisania kodu w celu sprawdzenia wartości błędu zwróconej przez funkcję zawsze wyczyść _doserrno
przy użyciu polecenia _set_doserrno
przed wywołaniem funkcji. Ponieważ inne wywołanie funkcji może zastąpić _doserrno
wartość , sprawdź wartość przy użyciu _get_doserrno
bezpośrednio po wywołaniu funkcji.
Zalecamy _get_errno
zamiast _get_doserrno
przenośnych kodów błędów.
Możliwe wartości _doserrno
są zdefiniowane w <pliku errno.h>.
Domyślnie stan globalny tej funkcji jest zakresem aplikacji. Aby zmienić to zachowanie, zobacz Stan globalny w CRT.
Wymagania
Procedura | Wymagany nagłówek | Opcjonalny nagłówek |
---|---|---|
_get_doserrno |
<stdlib.h>, <cstdlib> (C++) | <errno.h>, <cerrno> (C++) |
_get_doserrno
to rozszerzenie firmy Microsoft. Aby uzyskać więcej informacji o zgodności, zobacz Zgodność.