Kuinka viivyttää C: 7 vaihetta (kuvilla)

Sisällysluettelo:

Kuinka viivyttää C: 7 vaihetta (kuvilla)
Kuinka viivyttää C: 7 vaihetta (kuvilla)

Video: Kuinka viivyttää C: 7 vaihetta (kuvilla)

Video: Kuinka viivyttää C: 7 vaihetta (kuvilla)
Video: Kuidas teenida YouTube'i lühikeste pükstega raha, ilma et teete ise videoid nullist 2024, Saattaa
Anonim

Oletko koskaan halunnut saada C -ohjelman odottamaan tietyn ajan?

Voit määrittää tekniikan, joka sallii ajan kulumisen, esimerkiksi: kun näytetään pelin aloitussivu (ilmoitus tai vihje).

Okei, tässä on muutamia tapoja saada ohjelma "pysymään paikallaan", lue…

Askeleet

Viive C vaiheessa 1
Viive C vaiheessa 1

Vaihe 1. Saa suorittimen toimimaan jonkin aikaa tuottamatta mitään havaittavaa tapahtumaa

Viive C vaiheessa 2
Viive C vaiheessa 2

Vaihe 2. Älä tee muita toimintoja viiveen aikana yksinkertaisen aikaviiveen luomiseksi

Menetelmä 1 /2: "For-loop" -tekniikka

Viive C -vaiheessa 3
Viive C -vaiheessa 3

Vaihe 1. Käytä tyypillistä "for" -silmukkaa ja sen jälkeen null -käskyä toteuttaaksesi aikaviiveen

Viive C vaiheessa 4
Viive C vaiheessa 4

Vaihe 2. Kirjoita esimerkki seuraavasti:

  • (i = 1; i <100; i ++);
  • Lausunto, jota seuraa ";" saa tietokoneen suorittamaan silmukan 100 kertaa ilman havaittavia tapahtumia. Se vain aiheuttaa aikaviiveen.

Menetelmä 2/2: "Sleep ()" -tekniikka

Viive C vaiheessa 5
Viive C vaiheessa 5

Vaihe 1. Käytä lepotilaa () Ilmoitettu uni (int ms) -funktio, joka saa ohjelman odottamaan määritettyä aikaa millisekunteina

Viive C -vaiheessa 6
Viive C -vaiheessa 6

Vaihe 2. Sisällytä seuraava rivi ohjelmaan ennen "int main ()":

#sisältää

Viive C -vaiheessa 7
Viive C -vaiheessa 7

Vaihe 3. Lisää mihin tahansa, kun tarvitset ohjelmaa viiveen tekemiseen:

  • nukkua (1000);
  • Muuta "1000" millisekuntien lukumääräksi, jonka haluat odottaa (jos esimerkiksi haluat lykätä 2 sekuntia, korvaa se arvolla "2000").
  • Vihje: Joissakin järjestelmissä arvo voi viitata sekunteihin millisekuntien sijasta. Joten joskus 1000 ei ole sekunti, vaan itse asiassa 1000 sekuntia.

Vinkkejä

  • Yllä oleva logiikka voidaan toteuttaa käyttämällä mitä tahansa silmukkarakennetta ja sen jälkeen null-lausetta ";", kuten käyttämällä while- tai do-while-silmukoita.
  • Millisekunti on 1/1000 sekuntia.

Varoitukset

  • Tämä tekniikka on yleensä hyödytön kaikessa muussa kuin triviaalissa ohjelmassa. Käytä yleensä ajastimia tai tapahtumapohjaista lähestymistapaa tämän toteuttamiseksi. Muuten ohjelma ei reagoi viiveen aikana, eikä se ole aina hyvä asia. Lisäksi N: n valitseminen silmukassa voi johtaa yllättäviin tuloksiin, jos se riippuu käskyjen suorittamisesta. Ilmeisesti alkuperäinen kirjoittaja ei ole koskaan kuullut optimoivasta kääntäjästä … se voi optimoida koko silmukan, jos se ei itse asiassa tee mitään!
  • Jos käytät for-loopia, kääntäjä voi optimoida koodin ja koska silmukka ei tee mitään, poistaa sen. Tämä ei tapahdu käytettäessä viivettä ().
  • Huomaa, että for-loop-tekniikkaa käytettäessä saatat tarvita erittäin suuren span i: lle, koska tyhjä käsky suoritetaan erittäin nopeasti. Tällaiset suuret luvut eivät ehkä sovi kokonaislukutyyppiin.

Suositeltava: