РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
600 of 815 menu

Функция exit

Функция exit немедленно завершает выполнение программы. В первый параметр мы передаем код завершения, который возвращается операционной системе. Значение 0 или EXIT_SUCCESS означает успешное завершение, а EXIT_FAILURE или любое ненулевое значение - признак ошибки. При вызове exit автоматически вызываются функции, зарегистрированные через atexit, и сбрасываются буферы потоков ввода-вывода. Функция объявлена в заголовочном файле <cstdlib>.

Синтаксис

exit(status)

Пример

Давайте завершим программу с кодом успешного выполнения 0:

#include <iostream> #include <cstdlib> using namespace std; int main() { cout << "Program started" << endl; exit(0); cout << "This line will never print" << endl; return 0; }

Результат выполнения кода:

"Program started"

Пример

Давайте завершим программу с кодом ошибки EXIT_FAILURE при выполнении некоторого условия:

#include <iostream> #include <cstdlib> using namespace std; int main() { int res = -1; if (res < 0) { cout << "Error occurred" << endl; exit(EXIT_FAILURE); } cout << "All good" << endl; return 0; }

Результат выполнения кода:

"Error occurred"

Пример

Давайте зарегистрируем функцию через atexit и убедимся, что она вызывается при завершении через exit:

#include <iostream> #include <cstdlib> using namespace std; void cleanup() { cout << "Cleanup called" << endl; } int main() { atexit(cleanup); cout << "Exiting now" << endl; exit(0); return 0; }

Результат выполнения кода:

"Exiting now" "Cleanup called"

Смотрите также

  • функция atexit,
    которая регистрирует функцию для вызова при завершении
  • функция abort,
    которая аварийно завершает программу
  • функция terminate,
    которая вызывается при необработанном исключении
  • класс exception,
    который является базовым классом для исключений
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить