Compartir a través de


_get_doserrno

Obtiene el valor de error devuelto por el sistema operativo antes de traducirlo en un errno valor.

Sintaxis

errno_t _get_doserrno(
   int * pValue
);

Parámetros

pValue
Puntero a un entero que se va a rellenar con el valor actual de la macro global _doserrno.

Valor devuelto

Si _get_doserrno es correcto, devuelve cero; si no, devuelve un código de error. Si pValue es NULL, se invoca el controlador de parámetros no válidos, tal y como se describe en Validación de parámetros. Si la ejecución puede continuar, la función establece errno en EINVAL y devuelve EINVAL.

Comentarios

La macro global _doserrno se establece en cero durante la inicialización de CRT, antes de que la ejecución del proceso comience. Se establece en el valor de error del sistema operativo devuelto por cualquier llamada de función de nivel de sistema que devuelve un error del sistema operativo y nunca se restablece a cero durante la ejecución. Al escribir código para comprobar el valor de error devuelto por una función, siempre se borra _doserrno mediante _set_doserrno antes de la llamada de función. Dado que existe la posibilidad de que otra llamada de función sobrescriba _doserrno, compruebe el valor usando _get_doserrno inmediatamente después de la llamada de función.

Se recomienda _get_errno en lugar de para códigos de _get_doserrno error portátiles.

Los valores posibles de _doserrno se definen en <errno.h>.

De manera predeterminada, el estado global de esta función está limitado a la aplicación. Para cambiar este comportamiento, consulte Estado global en CRT.

Requisitos

Routine Encabezado necesario Encabezado opcional
_get_doserrno <stdlib.h>, <cstdlib> (C++) <errno.h>, <cerrno> (C++)

_get_doserrno es una extensión de Microsoft. Para obtener más información sobre compatibilidad, consulte Compatibilidad.

Consulte también

_set_doserrno
errno, _doserrno, _sys_errlist y _sys_nerr.