Как отложить в C: 7 шагов (с изображениями)

Оглавление:

Как отложить в C: 7 шагов (с изображениями)
Как отложить в C: 7 шагов (с изображениями)

Видео: Как отложить в C: 7 шагов (с изображениями)

Видео: Как отложить в C: 7 шагов (с изображениями)
Видео: Как скопировать и вставить текст на компьютере 2024, Май
Anonim

Вы когда-нибудь хотели заставить программу на C ждать определенное время?

Вы можете настроить технику, позволяющую отсчитывать время, например: при отображении страницы-заставки (уведомления или подсказки) для игры.

Хорошо, вот несколько способов заставить программу "остановиться", читайте дальше …

Шаги

Задержка в C, шаг 1
Задержка в C, шаг 1

Шаг 1. Заставьте ваш процессор поработать некоторое время без каких-либо заметных событий

Задержка в C, шаг 2
Задержка в C, шаг 2

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

Метод 1 из 2: метод "цикла for"

Задержка в C Шаг 3
Задержка в C Шаг 3

Шаг 1. Используйте типичный цикл for, за которым следует пустой оператор, чтобы реализовать временную задержку

Задержка в C Шаг 4
Задержка в C Шаг 4

Шаг 2. Напишите, например, следующее:

  • для (я = 1; я <100; я ++);
  • Заявление, за которым следует ";" заставляет компьютер выполнить цикл 100 раз без каких-либо заметных событий. Это просто создает временную задержку.

Метод 2 из 2: метод "sleep ()"

Задержка в C Шаг 5
Задержка в C Шаг 5

Шаг 1. Используйте функцию sleep (), объявленную в функции sleep (int ms), которая заставляет программу ждать в течение указанного времени в миллисекундах

Задержка в C Шаг 6
Задержка в C Шаг 6

Шаг 2. Включите в вашу программу следующую строку перед int main ():

#включают

Задержка в C Шаг 7
Задержка в C Шаг 7

Шаг 3. Вставьте туда, где вам нужна ваша программа, чтобы сделать задержку:

  • сон (1000);
  • Измените «1000» на количество миллисекунд, которое вы хотите подождать (например, если вы хотите сделать задержку в 2 секунды, замените ее на «2000».
  • Совет: в некоторых системах значение может относиться к секундам, а не к миллисекундам. Так что иногда 1000 - это не одна секунда, а фактически 1000 секунд.

подсказки

  • Вышеупомянутая логика может быть реализована с помощью любой циклической структуры, за которой следует пустой оператор - «;», например, с использованием циклов while или do-while.
  • Миллисекунда - это 1/1000 секунды.

Предупреждения

  • Этот метод обычно бесполезен ни в чем, кроме тривиальной программы. В общем, для этого используйте таймеры или подход, управляемый событиями. В противном случае программа перестанет отвечать в течение времени задержки, а это не всегда хорошо. Кроме того, выбор N в вашем цикле, если это зависит от выполнения инструкции, может дать удивительные результаты. Очевидно, первоначальный автор никогда не слышал об оптимизирующем компиляторе … он может оптимизировать весь цикл, если на самом деле ничего не делает!
  • Если вы используете цикл for, компилятор может оптимизировать код и, поскольку цикл ничего не делает, удалить его. Этого не происходит при использовании delay ().
  • Обратите внимание, что при использовании метода цикла for вам может потребоваться очень большой диапазон для i, потому что пустой оператор выполняется очень быстро. Такие большие числа могут не поместиться в целочисленный тип.

Рекомендуемые: