_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 NULLwartość , 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ć _doserrnowartość , 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ść.

Zobacz też

_set_doserrno
errno, _doserrno, _sys_errlisti _sys_nerr