Как приостановить программу c
Перейти к содержимому

Как приостановить программу c

  • автор:

Завершение программы C++

Функция, объявленная exit в , завершает программу C++. Значение, предоставленное в качестве аргумента exit , возвращается операционной системе в качестве возвращаемого кода программы или кода выхода. Принято, чтобы нулевым кодом возврата обозначалось, что программа завершена успешно. Константы EXIT_FAILURE можно использовать, а EXIT_SUCCESS также определенные в , чтобы указать успешность или сбой программы.

Функция abort

Функция abort , объявленная в стандартном формате, включает , завершает программу C++. Разница между exit и abort заключается в том, что exit обработка завершения среды выполнения C++ выполняется (вызывается глобальные деструкторы объектов). abort немедленно завершает программу. Функция abort проходит обычный процесс уничтожения для инициализированных глобальных статических объектов. Также осуществляется обход всей специальной обработки, которая была задана с помощью функции atexit .

Корпорация Майкрософт: по соображениям совместимости Windows реализация abort microsoft может разрешить выполнение кода завершения библиотеки DLL в определенных обстоятельствах. Дополнительные сведения см. в разделе abort .

Функция atexit

Используйте функцию atexit , чтобы указать действия, выполняемые до завершения программы. Перед выполнением функции выхода не инициализированы глобальные статические объекты, инициализированные перед вызовом atexit .

return оператор in main

Инструкция return позволяет указать возвращаемое значение из main . Оператор return в main первую очередь действует как любая другая return инструкция. Все автоматические переменные уничтожаются. main Затем вызывает возвращаемое exit значение в качестве параметра. Рассмотрим следующий пример:

// return_statement.cpp #include struct S < int value; >; int main() < S s< 3 >; exit( 3 ); // or return 3; > 

return Операторы exit , описанные в предыдущем примере, имеют аналогичное поведение. Как завершить программу, так и вернуть значение 3 операционной системе. Разница заключается в том, что exit не уничтожает автоматическую переменную s , а return оператор делает.

Как правило, C++ требует, чтобы функции, имеющие возвращаемые типы, отличные от void возвращаемого значения. Функция является исключением. Она main может завершиться без инструкции return . В этом случае он возвращает значение, зависящее от реализации, в вызывающий процесс. (По умолчанию MSVC возвращает значение 0.)

Уничтожение потоков и статических объектов

При вызове exit напрямую (или при вызове после оператора из main ), объекты потоков, связанные с текущим потоком return , уничтожаются. Затем статические объекты уничтожаются в обратном порядке их инициализации (после вызовов функций, указанных в , если таковые имеются atexit ). В следующем примере показано выполнение такого процесса инициализации и удаления.

Пример

В следующем примере статические объекты sd1 создаются и sd2 инициализированы перед записью main . После завершения работы этой программы с помощью инструкции return сначала sd2 уничтожается, а затем sd1 . Деструктор класса ShowData закрывает файлы, связанные с этими статическими объектами.

// using_exit_or_return1.cpp #include class ShowData < public: // Constructor opens a file. ShowData( const char *szDev ) < errno_t err; err = fopen_s(&OutputDev, szDev, "w" ); >// Destructor closes the file. ~ShowData() < fclose( OutputDev ); >// Disp function shows a string on the output device. void Disp( char *szData ) < fputs( szData, OutputDev ); >private: FILE *OutputDev; >; // Define a static object of type ShowData. The output device // selected is "CON" -- the standard output device. ShowData sd1 = "CON"; // Define another static object of type ShowData. The output // is directed to a file called "HELLO.DAT" ShowData sd2 = "hello.dat"; int main()

Другой способ написания этого кода заключается в объявлении ShowData объектов с блоком область, который неявно уничтожает их при выходе из область:

Как остановить программу в C++?

h> , завершает программу на C++. Значение, передаваемое в качестве аргумента, exit возвращается операционной системе в качестве кода возврата программы или кода выхода. Принято, чтобы нулевым кодом возврата обозначалось, что программа завершена успешно.

Как прекратить программу?

  1. В «Диспетчере задач» выберите вкладку «Процессы». .
  2. Выберите процесс, который не используете, и нажмите на название правой кнопкой мыши.
  3. Выберите «Завершить процесс».

Как закончить работу программы?

  1. Нажать на сочетание клавиш Ctrl + Alt + Del. .
  2. Выбрать в появившемся окне «Диспетчер задач». .
  3. Перейти во вкладку «Приложения».
  4. Выбрать зависшую программу и нажать на кнопку «Снять задачу» или «Завершить задачу».

Как остановить выполнение программы в Python?

exit() — стандартный способ завершения программы в Python.

Как завершить работу программы в C#?

  1. через убийство текущего процесса используя System.Diagnostics.Process.GetCurrentProcess().Kill();
  2. через вызов метода Shutdown() / BeginInvokeShutdown() на экземпляре класса Application,

Как закрыть программу которая не закрывается через Диспетчер задач?

Нажмите Alt+Ctrl+Del, во вкладке «Приложения» найдите зависшую программу и нажмите «Снять» задачу. Если это не помогло, перейдите во вкладку «Процессы», найдите зависший процесс и нажмите «Завершить процесс». В большинстве случаев зависшая программа после этого закроется.

Как принудительно завершить программу С ++?

  1. Вызовите exit функцию.
  2. Вызовите abort функцию.
  3. Выполните return инструкцию из main .

Как закончить программу в С ++?

Функция _Exit (), завершает работу программы. Аргумент code указывает статус завершения работы. При завершении работы в штатном порядке рекомендуется указывать значение статуса 0 или EXIT_SUCCESS. В противном случае рекомендуется указывать отличное от нуля значение или EXIT_FAILURE.

Как принудительно закрыть программы на андроид?

Чтобы закрыть одно приложение, проведите вверх от нижнего края экрана, удерживайте палец, затем уберите его. После этого смахните окно приложения вверх. Чтобы закрыть все приложения, проведите вверх от нижнего края экрана, удерживайте палец, затем уберите его. После этого смахните слева направо и нажмите Очистить все.

Как выйти из программы в Питоне?

Простой способ досрочного завершения скрипта Python — это использование встроенной quit() функции. Там нет необходимости импортировать любую библиотеку, и это эффективно и просто. также sys. exit () завершит все сценарии Python, но quit () завершит только сценарий, который его породил.

Как выйти из консоли питона?

CTRL + c -> Прервет большинство заданий. Если, однако, вы написали программу-оболочку python, которая в свою очередь вызывает другие программы python, Ctrl-c остановит только текущее задание.

Как завершить программу Windows Forms?

  1. кликнуть в правом верхнем углу красную кнопку «крестик»
  2. комбинация клавиш Alt+F4.
  3. кликнуть правой кнопкой мыши в верхнем левом углу, выбрать из контекстного меню «Закрыть»

Какие способы приостановить программу на время (сек) вы знаете?

Нехорошо занимать CPU бестолковыми циклами. Посмотрите на ответ @Kremchik. Также можно использовать select().

31 июл 2011 в 14:19
Кстати, ЗАМЕДЛИТЬ или ПРИОСТАНОВИТЬ.
1 авг 2011 в 13:22
И сделав c помощью while приостановку, вы теряете управление программой.
1 авг 2011 в 13:33

Идея(стара как мир): вынести функцию в отдельный поток, коим и управлять. Остается только сделать синхронизацию потоков.

1 авг 2011 в 13:38
Приостановить. Простите, не так выразился.
1 авг 2011 в 13:48

5 ответов 5

Сортировка: Сброс на вариант по умолчанию

#include . . sleep(2);//2 секунды usleep(1000000);//1 секунда (1.000.000 микросекунд) 

Необходимо учесть, что проверяя эти функции printf-ом нужно либо закончить принт на «\n» , либо установить сразу после принта flush: fflush(stdout); , например:

printf("1"); fflush(stdout); sleep(1); printf(" - 2"); 

Это же касается и cout. Аналог fflush(stdout) — cout.flush();

PS В Windows этого дела нет, но есть замена:

#include Sleep(1000);//1 секунда - 1.000 миллисекунд 

Как остановить программу посредине кода?

Author24 — интернет-сервис помощи студентам

В программе нужно сделать так, чтобы если пользователь нажал не 1 и не 2 и не согласился начинать с начала , то программа закрывается, так, чтобы не продолжалось выполнение главной функции. Можно ли так сделать??

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87
#include #include #include #include using namespace std; int matrix[3][6]; void input_matrix() { Input: int number, i, j; char cont; cout  "Для ввода массива с клавиатуры - нажмите 1 "  endl; cout  "Для чтения массива из файла - нажмите 2 "  endl; cout  "Ваш выбор: "; cin >> number; switch(number) { case 1: { for (i = 0; i  3; i++) { for (j = 0; j  6; j++) { cout  "\nВведите элемент массива"  " ["  i  "]["  j  "] = "; cin >> matrix[i][j]; } } cout"\nПолученная матрица:\n\n"; for (int i = 0; i  3; i++) { for (int j = 0; j  6; j++) { cout  matrix[i][j]" "; } coutendl; } break; } case 2: { fstream file; file.open("E:\\qwerty.txt"); int i, j; for (i = 0; i  3; i++) { for (j = 0; j  6; j++) { file >> matrix[i][j]; } } file.close(); cout"\nПолученная матрица:\n\n"; for (int i = 0; i  3; i++) { for (int j = 0; j  6; j++) { cout  matrix[i][j]" "; } coutendl; } break; } default: { cout "Ошибка. \n"; cout  "Начать с начала? (Да - y / Нет - любая кнопка)"; cin >> cont; if (cont=='y'or'Y') goto Input; else { } } } } int main() { setlocale(0,""); input_matrix(); cout"НЕ ДОЛЖНО ВЫВЕСТИ НА ЭКРАН"; return 0; }

То есть, написать вот тут

1 2 3 4 5
if (cont=='y'or'Y') goto Input; else { }

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *