Kako odgoditi u C: 7 koraka (sa slikama)

Sadržaj:

Kako odgoditi u C: 7 koraka (sa slikama)
Kako odgoditi u C: 7 koraka (sa slikama)

Video: Kako odgoditi u C: 7 koraka (sa slikama)

Video: Kako odgoditi u C: 7 koraka (sa slikama)
Video: Kako instalirati Google Chrome na linux mintu 18.1.How to install Google Chrome browser on linux 2024, Svibanj
Anonim

Jeste li ikada htjeli da program C čeka određeno vrijeme?

Možete postaviti tehniku koja će omogućiti da vrijeme otkuca, na primjer: pri prikazivanju splash stranice (obavijest ili natuknica) za igru.

U redu, evo nekoliko načina da učinite da program "miruje", čitajte dalje …

Koraci

Odgoda u C Korak 1
Odgoda u C Korak 1

Korak 1. Neka vaš CPU radi neko vrijeme bez stvaranja bilo kakvog uočljivog događaja

Odgoda u C Korak 2
Odgoda u C Korak 2

Korak 2. Ne radite ništa drugo tijekom tog kašnjenja kako biste stvorili jednostavno vremensko kašnjenje

Metoda 1 od 2: Tehnika "for-loop"

Odgoda u C Korak 3
Odgoda u C Korak 3

Korak 1. Upotrijebite tipičnu petlju "for" nakon koje slijedi null izraz za implementaciju vremenskog kašnjenja

Odgoda u C Korak 4
Odgoda u C Korak 4

Korak 2. Za primjer napišite sljedeće:

  • za (i = 1; i <100; i ++);
  • Izjava iza koje slijedi ";" tjera računalo da izvrši petlju 100 puta bez ikakvog uočljivog događaja. To samo stvara vremensko kašnjenje.

Metoda 2 od 2: Tehnika "sleep ()"

Odgoda u C Korak 5
Odgoda u C Korak 5

Korak 1. Upotrijebite sleep () Funkciju zvanu sleep (int ms) deklariranu u kojoj program čeka u zadanom vremenu u milisekundama

Odgoda u C Korak 6
Odgoda u C Korak 6

Korak 2. Uključite sljedeći redak u svoj program prije "int main ()":

#uključi

Odgoda u C Korak 7
Odgoda u C Korak 7

Korak 3. Umetnite, gdje god vam je potreban program za odgodu:

  • spavati (1000);
  • Promijenite "1000" na broj milisekundi koje želite čekati (na primjer, ako želite odgoditi 2 sekunde, zamijenite ga sa "2000".
  • Savjet: Na nekim sustavima vrijednost se može odnositi na sekunde, umjesto na milisekunde. Tako ponekad 1000 nije jedna sekunda, već, zapravo, 1000 sekundi.

Savjeti

  • Gornja logika može se implementirati korištenjem bilo koje strukture petlje iza koje slijedi null izraz- ";", na primjer pomoću while ili do-while petlji.
  • Milisekunda je 1/1000 sekunde.

Upozorenja

  • Ova je tehnika općenito beskorisna u bilo čemu osim u trivijalnom programu. Općenito, za provedbu toga koristite mjerače vremena ili pristup vođen događajima. Inače će program prestati reagirati tijekom vremena odgode, a to nije uvijek dobro. Osim toga, odabir N u vašoj petlji, ako ovisi o izvršavanju instrukcija, može imati iznenađujuće rezultate. Očito izvorni autor nikada nije čuo za optimizacijski prevoditelj … mogao bi optimizirati cijelu petlju ako zapravo ne radi ništa!
  • Ako koristite for-loop, prevoditelj može optimizirati kôd i, jer petlja ne radi ništa, ukloniti ga. To se ne događa kada se koristi delay ().
  • Imajte na umu da će vam pri upotrebi for-loop tehnike trebati vrlo veliki raspon za i, jer se prazna naredba izvršava vrlo brzo. Takvi veliki brojevi možda se ne uklapaju u cijeli broj.

Preporučeni: