Delen via


exit, _Exit_exit

Hiermee wordt het oproepproces beëindigd. De exit functie beëindigt deze na opschonen _exit en _Exit beëindigt deze onmiddellijk.

Opmerking

Gebruik deze methode niet om een UWP-app (Universal Windows Platform) af te sluiten, behalve in test- of foutopsporingsscenario's. Programmatische of ui-manieren om een Store-app te sluiten, zijn niet toegestaan volgens het Microsoft Store-beleid. Zie de levenscyclus van UWP-apps voor meer informatie. Zie de universal Windows Platform-documentatie voor meer informatie over UWP-apps.

Syntaxis

void exit(
   int const status
);
void _Exit(
   int const status
);
void _exit(
   int const status
);

Parameterwaarden

status
Statuscode afsluiten.

Opmerkingen

Met exitde functies _Exit wordt _exit het aanroepen beëindigd. De exit functie roept destructors aan voor thread-lokale objecten en roept vervolgens de functies aan die zijn geregistreerd door atexit en _onexitvervolgens alle bestandsbuffers leegmaken voordat het proces wordt beëindigd. De _Exit en _exit functies beëindigen het proces zonder thread-lokale objecten te vernietigen of te verwerken atexit of _onexit functies, en zonder stroombuffers leeg te maken.

Hoewel de exitaanroepen _Exit en _exit aanroepen geen waarde retourneren, wordt de waarde status beschikbaar gesteld aan de hostomgeving of het wachtende oproepproces, indien aanwezig, nadat het proces is afgesloten. Normaal gesproken stelt de aanroeper de status waarde in op 0 om een normale uitgang aan te geven of op een andere waarde om een fout aan te geven. De status waarde is beschikbaar voor de batchopdracht ERRORLEVEL van het besturingssysteem en wordt vertegenwoordigd door een van de twee constanten: EXIT_SUCCESS, die een waarde van 0 of EXIT_FAILURE, die een waarde van 1 vertegenwoordigt.

De exitfuncties , _Exit, _exit, _cexitquick_exiten _c_exit werken als volgt.

Functie Description
exit Voert volledige C-bibliotheekbeëindigingsprocedures uit, beëindigt het proces en levert de opgegeven statuscode aan de hostomgeving.
_Exit Voert minimale C-bibliotheekbeëindigingsprocedures uit, beëindigt het proces en levert de opgegeven statuscode aan de hostomgeving.
_exit Voert minimale C-bibliotheekbeëindigingsprocedures uit, beëindigt het proces en levert de opgegeven statuscode aan de hostomgeving.
quick_exit Voert snelle C-bibliotheekbeëindigingsprocedures uit, beëindigt het proces en levert de opgegeven statuscode aan de hostomgeving.
_cexit Voert volledige C-bibliotheekbeëindigingsprocedures uit en keert terug naar de beller. Het proces wordt niet beëindigd.
_c_exit Voert minimale C-bibliotheekbeëindigingsprocedures uit en keert terug naar de beller. Het proces wordt niet beëindigd.

Wanneer u de exit, _Exit of _exit functie aanroept, worden de destructors voor tijdelijke of automatische objecten die bestaan op het moment van de aanroep niet aangeroepen. Een automatisch object is een niet-statisch lokaal object dat is gedefinieerd in een functie. Een tijdelijk object is een object dat door de compiler wordt gemaakt, zoals een waarde die wordt geretourneerd door een functieaanroep. Als u een automatisch object wilt vernietigen voordat u aanroept exit, _Exitof _exitexpliciet de destructor voor het object aanroept, zoals hier wordt weergegeven:

void last_fn() {}
    struct SomeClass {} myInstance{};
    // ...
    myInstance.~SomeClass(); // explicit destructor call
    exit(0);
}

Gebruik niet DLL_PROCESS_ATTACH om te bellen exit van DllMain. Als u de DLLMain functie wilt afsluiten, keert u terug FALSE van DLL_PROCESS_ATTACH.

De globale status van deze functie is standaard gericht op de toepassing. Als u dit gedrag wilt wijzigen, raadpleegt u de globale status in de CRT.

Requirements

Functie Vereiste header
exit, _Exit_exit <process.h> of <stdlib.h>

Zie Compatibiliteit voor meer compatibiliteitsinformatie.

Example

// 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 );
}

Zie ook

Proces- en omgevingsbeheer
abort
atexit
_cexit, _c_exit
_exec, _wexec functies
_onexit, _onexit_m
quick_exit
_spawn, _wspawn functies
system, _wsystem