Я начинаю C. Я запускаю программу C, но окно закрывается слишком быстро, прежде чем я что-нибудь увижу. Как приостановить окно?
Как сделать паузу в C?
Ответ 1
вы можете поместить
getchar();
перед возвратом от основной функции. Это будет ждать ввода символов перед выходом из программы.
В качестве альтернативы вы можете запустить свою программу из командной строки, и вывод будет видимым.
Ответ 2
Если вы хотите просто задержать закрытие окна без фактического нажатия кнопки (метод getchar()
), вы можете просто использовать метод sleep()
; он принимает количество секунд, которое вы хотите спать в качестве аргумента.
#include <unistd.h>
// your code here
sleep(3); // sleep for 3 seconds
Литература: сон() вручную
Ответ 3
Это консольная программа, работающая в Windows? Если это так, запустите его с консоли, которую вы уже открыли. например, запустите "cmd", затем перейдите в каталог, в котором есть .exe(с помощью команды cd), затем введите имя exe. Окно консоли останется открытым.
Ответ 4
Если вы создаете оконную программу консоли, вы можете использовать систему ( "пауза" );
Ответ 5
В системах POSIX лучшее решение, по-видимому, использует:
#include <unistd.h>
pause ();
Если процесс получает сигнал, действие которого заключается в его завершении (обычно, набрав Ctrl + C в терминале), тогда pause
не вернется и процесс будет эффективно завершен этим сигналом. Более сложное использование заключается в использовании функции захвата сигнала, вызываемой при получении соответствующего сигнала, после чего возвращается pause
, возобновление процесса.
Примечание: использование getchar()
не будет работать, будет перенаправлен стандартный ввод; следовательно, это более общее решение.
Ответ 6
Я предполагаю, что вы находитесь в Windows. Вместо того, чтобы пытаться запустить вашу программу, дважды щелкнув по ее значку или нажав кнопку в своей среде IDE, откройте командную строку cd в каталоге, в котором находится ваша программа, и запустите его, введя его имя в командной строке.
Ответ 7
getch()
также может использоваться, который определен в conio.h.
Пример программы будет выглядеть так:
#include <stdio.h>
#include <conio.h>
int main()
{
//your code
getch();
return 0;
}
getch()
ожидает ввода любого символа с клавиатуры (необязательно введите ключ).
Ответ 8
Вы также можете просто использовать system("pause");
Ответ 9
Хорошая работа, о которой я вспомнил о пакетных файлах DOS. Не нужно Getchar() вообще. Просто напишите командный файл, чтобы сменить каталог (cd) в папку, в которой находится программа. введите имя программы exe и паузу следующей строки. Пример:
cd\
wallpaper_calculator.exe пауза
Ответ 10
Для Linux; getchar() - это все, что вам нужно.
Если вы находитесь в Windows, проверьте следующее: это именно то, что вам нужно!
ФункцияФункция kbit()
- kbhit() используется для определения того, нажата ли клавиша или нет.
- Чтобы использовать kbhit() в прорамах C или С++, вы должны включить заголовочный файл "conio.h".
Например, посмотрите, как он работает в следующей программе:
//any_key.c
#include <stdio.h>
#include <conio.h>
int main(){
//code here
printf ("Press any key to continue . . .\n");
while (1) if (kbhit()) break;
//code here
return 0;
}
Когда я компилирую и запускаю программу, это, я вижу.
Только когда пользователь нажимает только одну клавишу с клавиатуры, kbhit() возвращает 1.