Sdílet prostřednictvím


atexit

Zadanou funkci při ukončení procesů.

int atexit(
   void (__cdecl *func )( void )
);

Parametry

  • func
    Funkce pro volání.

Vrácená hodnota

atexitVrátí 0, pokud je úspěšná nebo nenulovou hodnotu, pokud dojde k chybě.

Poznámky

atexit Je funkce předána adresa funkce (func) při obvykle ukončí program.Následná volání atexit vytvoření rejstříku funkce, které jsou provedeny v poslední v pořadí budou (LIFO).Funkce předány atexit nelze převzít parametry.atexita _onexit použití haldy držet rejstříku funkce.Tedy počet funkcí, které lze registrovat je omezen pouze paměť haldy.

Kód v atexit funkce by neměla obsahovat žádné závislost na libovolnou knihovnu DLL, které by mohly mít již uvolněna při atexit je volána funkce.

Chcete-li generovat standardu ANSI aplikace používají ANSI standard atexit funkce (spíše než podobné _onexit funkci).

Požadavky

Rutina

Požadované záhlaví

atexit

<stdlib.h>

Příklad

Tento program posune čtyř funkcí do zásobníku funkce, které mají být provedeny při atexit se nazývá.Při ukončení programu, tyto programy jsou spouštěny na poslední, první mimo základ.

// crt_atexit.c
#include <stdlib.h>
#include <stdio.h>

void fn1( void ), fn2( void ), fn3( void ), fn4( void );

int main( void )
{
   atexit( fn1 );
   atexit( fn2 );
   atexit( fn3 );
   atexit( fn4 );
   printf( "This is executed first.\n" );
}

void fn1()
{
   printf( "next.\n" );
}

void fn2()
{
   printf( "executed " );
}

void fn3()
{
   printf( "is " );
}

void fn4()
{
   printf( "This " );
}
  
  

Ekvivalent v rozhraní .NET Framework

System::Diagnostics::Process:: byl ukončen

Viz také

Referenční dokumentace

Proces a řízení prostředí

abort

exit, _exit

_onexit _onexit_m