exit, _Exit, _exit

Arama işlemini sonlandırır. exit işlevi temizlemeden sonra _exit sonlandırır ve _Exit hemen sonlandırır.

Not

Test veya hata ayıklama senaryoları dışında bir Evrensel Windows Platformu (UWP) uygulamasını kapatmak için bu yöntemi kullanmayın. Microsoft Store ilkelerine göre Bir Mağaza uygulamasını kapatmaya yönelik programlı veya kullanıcı arabirimi yöntemlerine izin verilmez. Daha fazla bilgi için bkz . UWP uygulama yaşam döngüsü. UWP uygulamaları hakkında daha fazla bilgi için Evrensel Windows Platformu belgelerine bakın.

Sözdizimi

void exit(
   int const status
);
void _Exit(
   int const status
);
void _exit(
   int const status
);

Parametreler

status
Çıkış durum kodu.

Açıklamalar

exitve _Exit _exit işlevleri çağırma işlemini sonlandırır. İşlevexit, iş parçacığı yerel nesneleri için yıkıcıları çağırır, ardından ve _onexittarafından atexit kaydedilen son ilk çıkış (LIFO) sırasında işlevleri çağırır ve ardından işlemi sonlandırmadan önce tüm dosya arabelleklerini temizler. _Exit ve _exit işlevleri, iş parçacığı yerel nesnelerini veya işleme atexit veya _onexit işlevleri yok etmeden ve akış arabelleklerini boşaltmadan işlemi sonlandırır.

ve _exit çağrıları exit_Exit bir değer döndürmese destatus, içindeki değeri, işlem çıktıktan sonra konak ortamı veya bekleyen arama işlemi (varsa) için kullanılabilir hale getirilir. Genellikle çağıran, normal bir çıkışı belirtmek için değeri 0 olarak veya hata belirtmek için başka bir değere ayarlar status . Değer status , işletim sistemi toplu işlemi komutu ERRORLEVEL tarafından kullanılabilir ve iki sabitin biriyle temsil edilir: EXIT_SUCCESS0 değerini temsil eden veya EXIT_FAILURE1 değerini temsil eden .

exit, _Exit, , _exit, quick_exit, _cexitve _c_exit işlevleri aşağıdaki gibi davranır.

İşlev Açıklama
exit Tam C kitaplığı sonlandırma yordamları gerçekleştirir, işlemi sonlandırır ve sağlanan durum kodunu konak ortamına sağlar.
_Exit En az C kitaplığı sonlandırma yordamları gerçekleştirir, işlemi sonlandırır ve sağlanan durum kodunu konak ortamına sağlar.
_exit En az C kitaplığı sonlandırma yordamları gerçekleştirir, işlemi sonlandırır ve sağlanan durum kodunu konak ortamına sağlar.
quick_exit Hızlı C kitaplığı sonlandırma yordamları gerçekleştirir, işlemi sonlandırır ve sağlanan durum kodunu konak ortamına sağlar.
_cexit Tam C kitaplığı sonlandırma yordamları gerçekleştirir ve çağırana geri döner. İşlemi sonlandırmaz.
_c_exit En az C kitaplığı sonlandırma yordamları gerçekleştirir ve çağırana geri döner. İşlemi sonlandırmaz.

öğesini _Exit veya _exit işlevini çağırdığınızdaexit, çağrı sırasında var olan geçici veya otomatik nesnelerin yıkıcıları çağrılmaz. Otomatik nesne, bir işlevde tanımlanan statik olmayan bir yerel nesnedir. Geçici nesne, işlev çağrısı tarafından döndürülen bir değer gibi derleyici tarafından oluşturulan bir nesnedir. , veya _exitçağırmadan exit_Exitönce bir otomatik nesneyi yok etmek için, burada gösterildiği gibi nesnenin yıkıcısını açıkça çağırın:

void last_fn() {}
    struct SomeClass {} myInstance{};
    // ...
    myInstance.~SomeClass(); // explicit destructor call
    exit(0);
}

'den DllMainarama exit yapmak için kullanmayınDLL_PROCESS_ATTACH. İşlevden DLLMain çıkmak için işlevinden DLL_PROCESS_ATTACHdönünFALSE.

Varsayılan olarak, bu işlevin genel durumunun kapsamı uygulama olarak belirlenmiştir. Bu davranışı değiştirmek için bkz. CRT'de Genel durum.

Gereksinimler

İşlev Gerekli başlık
exit, _Exit, _exit <process.h> veya <stdlib.h>

Daha fazla uyumluluk bilgisi için bkz . Uyumluluk.

Örnek

// 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 );
}

Ayrıca bkz.

İşlem ve ortam denetimi
abort
atexit
_cexit, _c_exit
_exec, _wexec işlevler
_onexit, _onexit_m
quick_exit
_spawn, _wspawn işlevler
system, _wsystem