atexit
Processa a função especificada ao sair.
int atexit(
void (__cdecl *func )( void )
);
Parâmetros
- func
Função a ser chamada.
Valor de retorno
atexitRetorna 0 se obtiver êxito, ou um valor diferente de zero se ocorrer um erro.
Comentários
O atexit função é passada o endereço de uma função (func) a ser chamado quando o programa é encerrado normalmente.Sucessivas chamadas a atexit criar um registro das funções que são executadas na última-in, First-out (LIFO) ordem.As funções são passados para atexit não pode ter parâmetros.atexite _onexit usar o heap para armazenar o registro das funções.Assim, o número de funções que podem ser registrados é limitado apenas pela memória heap.
O código a atexit função não deve conter qualquer dependência em qualquer DLL, que poderia já foram descarregados quando o atexit função é chamada.
Para gerar um aplicativo compatível com ANSI, use o padrão ANSI atexit função (em vez do semelhante _onexit função).
Requisitos
Rotina |
Cabeçalho necessário |
---|---|
atexit |
<stdlib.h> |
Exemplo
Este programa coloca quatro funções na pilha de funções a serem executados quando atexit é chamado.Quando o programa for encerrado, esses programas são executados em uma última, primeiro para fora da base.
// 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 " );
}
Equivalência do .NET Framework
System::Diagnostics::Process:: saiu