sair, _exit
exit finaliza o processo de chamada após a limpeza; _exit finalizar-la imediatamente.
Observação |
---|
Não use este método para fechar um aplicativo de Windows Store , exceto em cenários testes ou de depuração.As maneiras programação ou de interface de usuário de fechar um aplicativo de Windows Store não são permitidas de acordo com a seção 3,6 Requisitos de certificação de aplicativo do Windows 8do.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
Funções de exit e de _exit finalizam o processo de chamada.funções de (LIFO) - ordem dos programas de linha deexit aberta as último-a-entrar-primeiro-a-sair que são registradas por atexit e por _onexit, e nivelam em todos os buffers de arquivo antes que ela conclui o processo._exit finaliza 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 normal ou para defini-la qualquer outro valor para indicar um erro.
Embora as chamadas de exit e de _exit não retorna um valor, o byte de ordem baixa de status é disponibilizado para o processo de chamada de espera, se houver, após o processo de chamada será encerrado.O valor de status está disponível para o comando do sistema operacional ERRORLEVEL em lotes e é representado por uma de duas 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 segue.
Função |
Descrição |
---|---|
exit |
Executar procedimentos de finalização completas de biblioteca de c, finaliza o processo, e termina com código de status fornecido. |
_exit |
Executar procedimentos de finalização rápido de biblioteca de c, finaliza o processo, e termina com código de status fornecido. |
_cexit |
Executar procedimentos de finalização completas de biblioteca de c e retorna para o chamador, mas não termina o processo. |
_c_exit |
Executar procedimentos de finalização rápido de biblioteca de c e retorna para o chamador, mas não termina o processo. |
Quando você chama a função de exit ou de _exit , os destruidores para quaisquer objetos temporários ou automático que existem na altura da chamada não são chamados.Um objeto automática é definido em uma função onde o objeto não foi declarada para ser estático.Um objeto temporário é um objeto que é criado pelo compilador.Para destruir um objeto automático antes de chamar exit ou _exit, chamar explicitamente o destrutor para o objeto, como segue:
myObject.myClass::~myClass();
Não use DLL_PROCESS_ATTACH para chamar exit de DllMain.Se você deseja deixar a 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 informações extras de 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