Compartilhar via


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

Consulte também

Referência

Processo e controle do ambiente

anulação

sair, _exit

_onexit, _onexit_m