exit, _exit
Encerra o processo de chamadaexit finalizar-lo após a limpeza; conclua _exit imediatamente.
Dica
Não use este método para fechar um aplicativo de Windows Store, exceto em cenários de teste e depuração.As maneiras programáticas ou de interface de usuário de fechar um aplicativo do Windows Store não são permitidas de acordo com a seção 3.6 dos Requisitos de certificação de aplicativo do Windows 8.Para obter mais informações, consulte Ciclo de vida do aplicativo (aplicativos da Windows Store).
void exit(
int status
);
void _exit(
int status
);
Parâmetros
- status
Status de saída.
Comentários
As funções de exit e de _exit finalizam o processo de chamada. funções da ordem de - (LIFO) de programas de linha aberta deexit as primeiras último-em- em expansão que são registradas por atexit e por _onexit, e nível todos os buffers do arquivo antes de encerrar o processo. _exit encerra o processo sem processar atexit ou _onexit e sem liberar buffers de fluxo. Normalmente, o valor de status é definido como 0 para indicar uma saída regular ou para defini-lo como outro valor para indicar um erro.
Embora as chamadas de exit e de _exit não retorna um valor, o byte de ordem mais inferior de status for disponibilizado para o processo de chamada de espera, se houver, depois que o processo de chamada será encerrado. O valor de status está disponível para o comando de sistema operacional ERRORLEVEL do lote e é representado por uma destas constantes: EXIT_SUCCESS, que representa um valor de 0, ou EXIT_FAILURE, que representa um valor de 1. exit, _exit, _cexit, e _c_exit se comportam como se segue.
Função |
Descrição |
---|---|
exit |
Executa procedimentos de término completo da biblioteca de C, encerra o processo, e o será encerrado com o código de status fornecido. |
_exit |
Executa procedimentos rápidos de término da biblioteca de C, encerra o processo, e o será encerrado com o código de status fornecido. |
_cexit |
Executa procedimentos de término completo da biblioteca de C e retorna ao chamador, mas não encerra o processo. |
_c_exit |
Executa procedimentos rápidos de término da biblioteca de C e retorna ao chamador, mas não encerra o processo. |
Quando você chama a função de exit ou de _exit , os destruidores para todos os objetos temporários ou automática que existem na hora da chamada não serão chamados. Um objeto automático é definido em uma função em que o objeto não é declarada para ser estático. Um objeto temporário é um objeto criado pelo compilador. Para destruir um objeto automático antes de chamar exit ou _exit, chamar explicitamente o destruidor para o objeto, como segue:
myObject.myClass::~myClass();
Não use DLL_PROCESS_ATTACH para chamar exit de DllMain. Se você quiser sair da função de DLLMain , retornar FALSE de DLL_PROCESS_ATTACH.
Requisitos
Função |
Cabeçalho necessário |
---|---|
exit |
<process.h> ou <stdlib.h> |
_exit |
<process.h> ou <stdlib.h> |
Para obter informações adicionais sobre compatibilidade, consulte Compatibilidade.
Exemplo
// crt_exit.c
// This program returns an exit code of 1. The
// error code could be tested in a batch file.
#include <stdlib.h>
int main( void )
{
exit( 1 );
}
Equivalência do .NET Framework
System::Diagnostics::Process::Kill