atexit
Processa a função especificada ao sair.
int atexit(
void (__cdecl *func )( void )
);
Parâmetros
- func
Função seja chamada.
Valor de retorno
atexit Retorna 0 se obtiver êxito, ou um valor diferente de zero se ocorrer um erro.
Comentários
The atexit função é passada o endereço de uma função (func) a ser chamado quando o programa é encerrado normalmente. Sucessivas chamadas a atexit Crie um registro das funções que são executadas na última-in, ordem de fila (UEPS). As funções são passadas para atexit não é possível usar parâmetros. atexit e _onexit Use a pilha para manter 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 foi já tenham sido descarregado 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 semelhantes _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 executadas quando atexit é chamado. Quando o programa for encerrado, esses programas são executados em uma última, primeiro out 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 " );
}
This is executed first. This is executed next.
Equivalente do NET Framework
sistema::Diagnóstico::processo:: saída