exit, _exit
exit termina il processo chiamando dopo la pulizia, _exit la termina immediatamente.
[!NOTA]
Non utilizzare questo metodo per interrompere un'applicazione di Windows Store, ad eccezione di test o gli scenari di debug.Le modalità di interfaccia utente o a livello di codice chiudere un'applicazione di Windows Store non sono consentite dalla parte 3,6 di Windows 8 requisiti di certificazione di applicazione.Per ulteriori informazioni, vedere Ciclo di vita dell'applicazione (finestre archiviano le applicazioni).
void exit(
int status
);
void _exit(
int status
);
Parametri
- status
Lo stato di uscita.
Note
Le funzioni di _exit e di exit determinano l'interruzione del processo chiamante.funzioni di ordine e di (LIFO) di trasmissioni TV con interventi telefonici diexit le ultimo-in- LIFO (last-in-first-out) registrate da atexit e da _onexitquindi arrossisce tutti i buffer di file prima di terminare il processo._exit termina il processo senza l'elaborazione atexit o _onexit e senza svuotare il buffer del flusso.In genere, il valore di status è impostato su 0 per indicare l'uscita o un set normale a un altro valore per indicare un errore.
Sebbene le chiamate di _exit e di exit non restituiscono un valore, il byte meno significativi di status viene reso disponibile al processo chiamante in attesa, se presente, al termine dello stesso processo chiamante.Il valore di status è disponibile il comando batch del sistema operativo ERRORLEVEL ed è rappresentato da una di due costanti: EXIT_SUCCESS, che rappresenta un valore di 0, o EXIT_FAILURE, che rappresenta il valore 1.exit, _exit, _cexite _c_exit si comportano come segue.
Funzione |
Descrizione |
---|---|
exit |
Esegue le procedure di chiusura completa della libreria di c, termina il processo e viene terminato con il codice di stato fornito. |
_exit |
Esegue le procedure di chiusura rapide della libreria di c, termina il processo e viene terminato con il codice di stato fornito. |
_cexit |
Esegue le procedure e restituisce di chiusura completa della libreria di c al chiamante, ma non termina il processo. |
_c_exit |
Esegue le procedure e verrà restituita la chiusura della libreria di c al chiamante, ma non termina il processo. |
Quando si chiama la funzione di _exit o di exit, i distruttori per gli oggetti temporanei o automatici disponibili al momento della chiamata non vengono chiamati.Un oggetto automatico è definito in una funzione in cui l'oggetto è dichiarato come statico.Un oggetto temporaneo è un oggetto creato dal compilatore.Per eliminare un oggetto automatico prima di chiamare exit o _exit, in modo esplicito chiamare il distruttore dell'oggetto, come segue:
myObject.myClass::~myClass();
Non utilizzare DLL_PROCESS_ATTACH per chiamare exit da DllMain.Se si desidera terminare la funzione di DLLMain, restituire FALSE da DLL_PROCESS_ATTACH.
Requisiti
Funzione |
Intestazione obbligatoria |
---|---|
exit |
<process.h> o <stdlib.h> |
_exit |
<process.h> o <stdlib.h> |
Per informazioni aggiuntive di compatibilità, vedere Compatibilità.
Esempio
// crt_exit.c
// This program returns an exit code of 1. The
// error code could be tested in a batch file.
#include <stdlib.h>
int main( void )
{
exit( 1 );
}
Equivalente .NET Framework
System::Diagnostics::Process::Kill