void exit(int status)
void _exit(int status)
Функция exit() вызывает немедленное нормальное завершение программы. Значение параметра status задается вызывающим процессом. По соглашению, если значением параметра status является 0, то предполагается нормальное завершение программы. Ненулевое значение используется для указания ошибки, зависящей от реализации. Также можно использовать макросы EXIT_SUCCESS И EXIT_FAILURE в качестве значения параметра status. Они указывают на нормальное и ненормальное завершение программы соответственно. Вызов функции exit() осуществляет очистку буферов файлов, закрывает все открытые файлы и затем вызывает зарегистрированные с помощью функции atexit() терминальные функции.
Функция _exit() не закрывает каких-либо файлов, не производит очистки буферов и не вызывает функций завершения. Эта функция не определена стандартом ANSI С.