Cum să întârzii în C: 7 pași (cu imagini)

Cuprins:

Cum să întârzii în C: 7 pași (cu imagini)
Cum să întârzii în C: 7 pași (cu imagini)

Video: Cum să întârzii în C: 7 pași (cu imagini)

Video: Cum să întârzii în C: 7 pași (cu imagini)
Video: How to copy multiple things at once on a chrome book. 2024, Mai
Anonim

Ați dorit vreodată să faceți ca un program C să aștepte un anumit timp?

Puteți configura o tehnică pentru a permite timpului să se bifeze, de exemplu: atunci când afișați o pagină de start (o notă sau un indiciu) pentru un joc.

Bine, iată câteva modalități de a face programul să se oprească, citiți mai departe …

Pași

Întârziere în C Pasul 1
Întârziere în C Pasul 1

Pasul 1. Faceți procesorul să funcționeze pentru o perioadă de timp fără a produce niciun eveniment vizibil

Întârziere în C Pasul 2
Întârziere în C Pasul 2

Pasul 2. Nu faceți nicio altă operațiune în timpul acestei întârzieri, pentru a crea o întârziere simplă

Metoda 1 din 2: Tehnica „pentru buclă”

Întârziere în C Pasul 3
Întârziere în C Pasul 3

Pasul 1. Folosiți o buclă tipică „pentru” urmată de o instrucțiune nulă pentru a implementa întârzierea

Întârziere în C Pasul 4
Întârziere în C Pasul 4

Pasul 2. Scrieți după cum urmează, pentru un exemplu:

  • pentru (i = 1; i <100; i ++);
  • Afirmația urmată de „;” face ca computerul să execute bucla de 100 de ori fără niciun eveniment vizibil. Creează doar o întârziere.

Metoda 2 din 2: Tehnica "somn ()"

Întârziere în C Pasul 5
Întârziere în C Pasul 5

Pasul 1. Folosiți sleep () Funcția numită sleep (int ms) declarată în care face programul să aștepte timpul în milisecunde specificat

Întârziere în C Pasul 6
Întârziere în C Pasul 6

Pasul 2. Includeți următoarea linie în program înainte de „int main ()”:

#include

Întârziere în C Pasul 7
Întârziere în C Pasul 7

Pasul 3. Introduceți, oriunde aveți nevoie de programul dvs. pentru a întârzia:

  • somn (1000);
  • Schimbați „1000” la numărul de milisecunde pe care doriți să îl așteptați (de exemplu, dacă doriți să faceți o întârziere de 2 secunde, înlocuiți-l cu „2000”.
  • Sfat: pe unele sisteme valoarea se poate referi la secunde, în loc de milisecunde. Deci, uneori, 1000 nu reprezintă o secundă, ci, de fapt, 1000 de secunde.

sfaturi

  • Logica de mai sus poate fi implementată utilizând orice structură de looping urmată de o declarație nulă ";", cum ar fi folosind buclele while sau do-while.
  • O milisecundă este 1/1000 de secundă.

Avertizări

  • Această tehnică este în general inutilă în orice altceva decât un program banal. În general, utilizați temporizatoare sau o abordare bazată pe evenimente pentru a implementa acest lucru. În caz contrar, programul nu va mai răspunde în timpul întârzierii și acest lucru nu este întotdeauna un lucru bun. În plus, alegerea lui N în bucla dvs., dacă depinde de execuția instrucțiunilor, poate avea rezultate surprinzătoare. Se pare că autorul original nu a auzit niciodată de un compilator de optimizare … poate optimiza întreaga buclă dacă de fapt nu face nimic!
  • Dacă utilizați bucla for, compilatorul poate optimiza codul și, deoarece bucla nu face nimic, îl eliminați. Acest lucru nu se întâmplă când se utilizează delay ().
  • Rețineți că atunci când utilizați tehnica pentru buclă, este posibil să aveți nevoie de un interval foarte mare pentru i, deoarece o instrucțiune goală este executată foarte repede. Este posibil ca astfel de numere mari să nu se încadreze într-un tip întreg.

Recomandat: