Udostępnij za pośrednictwem


atexit

Przetwarza określonej funkcji, przy zamykaniu.

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

Parametry

  • func
    Wywołanie funkcji.

Wartość zwracana

atexitZwraca wartość 0, jeśli kończy się pomyślnie lub wartość różną od zera w przypadku wystąpienia błędu.

Uwagi

atexit Funkcji przekazywany jest adres funkcji (func) ma być wywoływana, gdy program zakończy się normalnie.Kolejne wywołania atexit utworzyć rejestr funkcje, które są wykonywane w last-in, first-out (LIFO) zamówienia.Przekazany do funkcji atexit nie mogą mieć parametrów.atexiti _onexit umożliwia przytrzymaj rejestru funkcje sterty.W ten sposób liczba funkcje, które mogą być rejestrowane jest ograniczona jedynie przez pamięć sterty.

Kod w atexit funkcja nie powinna zawierać żadnych zależności każdej biblioteki DLL, która mogłaby już zostały rozładowane podczas atexit wywoływana jest funkcja.

Aby wygenerować aplikacja ze standardem ANSI, należy użyć standardu ANSI atexit funkcji (zamiast podobnych _onexit funkcji).

Wymagania

Rozpoczęto wykonywanie procedury

Wymaganego nagłówka

atexit

<stdlib.h>

Przykład

Ten program wypychanie cztery funkcje w stosie funkcje, które mają być wykonane, gdy atexit jest wywoływana.Gdy program kończy działanie, programy te są wykonywane ostatnio, najpierw out Podstawa.

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

Odpowiednik w programie .NET Framework

System::Diagnostics::Process:: zakończony

Zobacz też

Informacje

Proces i kontroli środowiska

abort

exit, _exit

_onexit, _onexit_m