_get_doserrno
Ottiene il valore di errore restituito dal sistema operativo prima che venga convertito in un errno
valore.
Sintassi
errno_t _get_doserrno(
int * pValue
);
Parametri
pValue
Un puntatore a un valore integer che deve essere compilato con il valore corrente della macro globale _doserrno
.
Valore restituito
Se _get_doserrno
ha esito positivo, restituisce zero; in caso contrario, restituisce un codice di errore. Se pValue
è NULL
, viene richiamato il gestore di parametri non validi, come descritto in Convalida dei parametri. Se l'esecuzione può continuare, la funzione imposta errno
suEINVAL
e restituisce EINVAL
.
Osservazioni:
La macro globale _doserrno
è impostata su zero durante l'inizializzazione CRT, prima dell'inizio dell'esecuzione del processo. Viene impostato sul valore di errore del sistema operativo restituito da qualsiasi chiamata di funzione a livello di sistema che restituisce un errore del sistema operativo e non viene mai reimpostato su zero durante l'esecuzione. Quando si scrive codice per controllare il valore di errore restituito da una funzione, deselezionare _doserrno
sempre usando _set_doserrno
prima della chiamata di funzione. Poiché un'altra chiamata di funzione potrebbe sovrascrivere _doserrno
, verificare il valore usando _get_doserrno
immediatamente dopo la chiamata di funzione.
È consigliabile _get_errno
anziché _get_doserrno
per i codici di errore portabili.
I valori possibili di _doserrno
sono definiti in <errno.h>.
Per impostazione predefinita, lo stato globale di questa funzione è limitato all'applicazione. Per modificare questo comportamento, vedere Stato globale in CRT.
Requisiti
Ciclo | Intestazione obbligatoria | Intestazione facoltativa |
---|---|---|
_get_doserrno |
<stdlib.h>, <cstdlib> (C++) | <errno.h>, <cerrno> (C++) |
_get_doserrno
è un'estensione Microsoft. Per altre informazioni sulla compatibilità, vedere Compatibility (Compatibilità).