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
Korak 1. Neka vaš CPU radi neko vrijeme bez stvaranja bilo kakvog uočljivog događaja
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"
Korak 1. Upotrijebite tipičnu petlju "for" nakon koje slijedi null izraz za implementaciju vremenskog kašnjenja
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 ()"
Korak 1. Upotrijebite sleep () Funkciju zvanu sleep (int ms) deklariranu u kojoj program čeka u zadanom vremenu u milisekundama
Korak 2. Uključite sljedeći redak u svoj program prije "int main ()":
#uključi
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.