atexit
Diferenças
Aqui você vê as diferenças entre duas revisões dessa página.
— | atexit [2023/09/12 16:14] (atual) – criada - edição externa 127.0.0.1 | ||
---|---|---|---|
Linha 1: | Linha 1: | ||
+ | ====== Função atexit ====== | ||
+ | Sintaxe: | ||
+ | |||
+ | '' | ||
+ | |||
+ | |||
+ | Arquivo Header: '' | ||
+ | |||
+ | ---- | ||
+ | |||
+ | Conforme definido no ANSI C, pode-se registrar até 32 [[definicao_funcao|funções]] que serão automaticamente executadas quando um processo termina. Estas funções são chamadas de //exit handlers// e são registradas através da chamada à função **'' | ||
+ | |||
+ | As funções serão chamadas na ordem inversa ao seu registro. Pode-se registrar a mesma [[definicao_funcao|função]] mais de uma vez que a mesma será chamada tantas vezes quantas registradas. | ||
+ | |||
+ | A [[definicao_funcao|função]] a ser registrada não deve esperar nenhum parâmetro bem como não é esperado que a função retorne nenhum valor devendo ser definida como: | ||
+ | |||
+ | '' | ||
+ | |||
+ | Veja o exemplo: | ||
+ | |||
+ | <code c> | ||
+ | /* programa atexit.c */ | ||
+ | |||
+ | #include < | ||
+ | #include < | ||
+ | |||
+ | void saindo1(void) | ||
+ | { | ||
+ | | ||
+ | | ||
+ | } | ||
+ | |||
+ | void saindo2(void) | ||
+ | { | ||
+ | | ||
+ | | ||
+ | } | ||
+ | |||
+ | int main(void) | ||
+ | { | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | } | ||
+ | </ |