_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.