![How to Flash Playstation 3 in 2020 HEN 4.86 (HFW4.86.1)](https://i.ytimg.com/vi/eMKc_Jf3rK4/hqdefault.jpg)
Obsah
- Kroky
- Metóda 1 z 2: Technika For-loop
- Metóda 2 z 2: Technika „spánok ()“
- Ukážkový kód
- Tipy
- Varovania
Už ste niekedy chceli vytvoriť program C, ktorý čaká určitý čas? Spôsob, akým bude čas „preletieť“, si môžete prispôsobiť napríklad: pri zobrazení vyskakovacej stránky (oznámenia alebo nápovedy) pre hru. ... OK, tu je niekoľko spôsobov, ako vytvoriť program „stand by“, čítajte ďalej ...
Kroky
1 Nechajte svoj procesor chvíľu bežať bez toho, aby spôsobil pozorovateľnú udalosť.
2 Počas tohto oneskorenia nevykonávajte žiadne ďalšie operácie, aby ste vytvorili jednoduché časové oneskorenie.
Metóda 1 z 2: Technika For-loop
1 Na implementáciu oneskorenia použite typickú slučku „for“, za ktorou nasleduje prázdny príkaz.
2 Napíšte napríklad takto:
- pre (i = 1; i100; i ++);
- Operátor podľa „;“ prinúti počítač 100 -krát sa zacykliť bez viditeľnej udalosti. Vytvára iba časové oneskorenie.
Metóda 2 z 2: Technika „spánok ()“
1 Použite spánok (). Táto funkcia sa nazýva spánok (int ms), deklarovaná v TIME.H>, vďaka čomu program čaká na zadanú dobu v milisekundách.
2 Pred program int main () zahrňte do svojho programu nasledujúci riadok:
- #include TIME.H>
3 V prípade potreby prilepte, aby sa váš program oneskoril:
- spánok (1000);
- Zmeňte „1000“ na počet milisekúnd, na ktoré chcete počkať (napríklad, ak chcete urobiť 2 -sekundové oneskorenie, nahraďte ho „2000“).
- Tip: V niektorých systémoch môže byť hodnota zadaná v sekundách namiesto milisekúnd. Preto niekedy 1000 nie je 1 sekunda, ale v skutočnosti 1000 sekúnd.
Ukážkový kód
Program, ktorý čaká určitý počet sekúnd:
#include stdio.h> #include dos.h> int main () {int del; // Perióda oneskorenia printf ("Zadajte čas oneskorenia (v sekundách):"); scanf ("% i" ,? del); del * = 1000; // Vynásobením 1 000 sa prevádza na milisekundy Delay (del); // Oneskorenie. printf („Hotovo.“); návrat 0; }
Program, ktorý odpočítava od 10 do 0:
#include STDIO.H> #include TIME.H> int main () {int i; pre (i = 10; i> = 0; i--) {printf ("% i n", i); // Napíšte aktuálne číslo 'odpočítavania' Oneskorenie (1000); // Počkajte chvíľu} návrat 0; }
Tipy
- Milisekunda je 1/1 000 sekundy.
- Vyššie uvedený algoritmus je možné implementovať pomocou ľubovoľnej štruktúry slučiek, za ktorou nasleduje nulový operátor - „; ako používanie slučiek while alebo do -while.
Varovania
- Táto metóda je spravidla zbytočná pre čokoľvek iné ako triviálny program. Na dosiahnutie tohto cieľa spravidla používajte časovače alebo prístup založený na udalostiach. V opačnom prípade program počas oneskorenia prestane reagovať a nie je to vždy dobré. Tiež výber N v slučke, ak to závisí od vykonávania príkazov, môže mať neočakávané výsledky. Pôvodný autor zrejme nikdy nepočul o optimalizačnom kompilátore ... môže optimalizovať celú slučku, ak v skutočnosti nič nerobí!
- Všimnite si toho, že keď použijete metódu „for-loop“, môže i trvať veľmi dlho, pretože prázdny príkaz je veľmi rýchly. Také veľké čísla sa nemusia hodiť do celočíselného typu.
- Ak použijete slučku for-loop, kompilátor môže kód optimalizovať a pretože slučka nerobí nič, odstráňte ju. To sa nestane, keď používate Delay ().