Sådan forsinkes i C: 7 trin (med billeder)

Indholdsfortegnelse:

Sådan forsinkes i C: 7 trin (med billeder)
Sådan forsinkes i C: 7 trin (med billeder)

Video: Sådan forsinkes i C: 7 trin (med billeder)

Video: Sådan forsinkes i C: 7 trin (med billeder)
Video: Chromebook: How to Copy & Paste w/ Keyboard Shortcut 2024, Kan
Anonim

Har du nogensinde ønsket at få et C -program til at vente et bestemt tidspunkt?

Du kan oprette en teknik, der giver tid til at krydse væk, for eksempel: når du viser en stænkside (en meddelelse eller et tip) til et spil.

Okay, her er nogle måder at få programmet til at "stå stille", læs videre …

Trin

Forsinkelse i C trin 1
Forsinkelse i C trin 1

Trin 1. Få din CPU til at fungere i nogen tid uden at producere nogen mærkbar begivenhed

Forsinkelse i C trin 2
Forsinkelse i C trin 2

Trin 2. Udfør ingen anden handling under denne forsinkelse for at skabe en simpel tidsforsinkelse

Metode 1 af 2: "For-loop" -teknikken

Forsinkelse i C Trin 3
Forsinkelse i C Trin 3

Trin 1. Brug en typisk "for" -sløjfe efterfulgt af en null -erklæring til at implementere tidsforsinkelse

Forsinkelse i C trin 4
Forsinkelse i C trin 4

Trin 2. Skriv som følgende for et eksempel:

  • for (i = 1; i <100; i ++);
  • Udtalelsen efterfulgt af ";" får computeren til at køre loop 100 gange uden nogen mærkbar hændelse. Det skaber bare en tidsforsinkelse.

Metode 2 af 2: "Sleep ()" -teknikken

Forsinkelse i C trin 5
Forsinkelse i C trin 5

Trin 1. Brug sleep () Funktionen kaldet sleep (int ms) erklæret, hvilket får programmet til at vente på den angivne tid i millisekunder

Forsinkelse i C Trin 6
Forsinkelse i C Trin 6

Trin 2. Inkluder følgende linje i dit program før "int main ()":

#omfatte

Forsinkelse i C Trin 7
Forsinkelse i C Trin 7

Trin 3. Indsæt, hvor som helst du har brug for, at dit program skal forsinke:

  • søvn (1000);
  • Skift "1000" til det antal millisekunder, du vil vente (f.eks. Hvis du vil foretage en forsinkelse på 2 sekunder, skal du erstatte det med "2000".
  • Tip: På nogle systemer kan værdien referere til sekunder i stedet for millisekunder. Så nogle gange er 1000 ikke et sekund, men faktisk 1000 sekunder.

Tips

  • Ovenstående logik kan implementeres ved at bruge en hvilken som helst looping-struktur efterfulgt af en null-sætning- ";", f.eks. Ved at bruge while eller do-while-loops.
  • Et millisekund er 1/1000 sekund.

Advarsler

  • Denne teknik er generelt ubrugelig i andet end et trivielt program. Brug generelt timere eller en hændelsesdrevet tilgang til at implementere dette. Ellers reagerer programmet ikke i løbet af forsinkelsestiden, og det er ikke altid en god ting. Desuden kan det have overraskende resultater at vælge N i din loop, hvis det afhænger af instruktionens udførelse. Tilsyneladende har den originale forfatter aldrig hørt om en optimerende compiler … den kan optimere hele sløjfen, hvis den faktisk ikke gør noget!
  • Hvis du bruger for-loop, kan kompilatoren optimere koden, og fordi loop ikke gør noget, skal du fjerne den. Dette sker ikke, når du bruger forsinkelse ().
  • Bemærk, at når du bruger for-loop-teknikken, har du muligvis brug for et meget stort spænd for i, fordi en tom sætning udføres meget hurtigt. Sådanne store tal passer muligvis ikke i en heltalstype.

Anbefalede: