Hjem Personlig finansiering Udbrud af et uendeligt loop i dit sprogprogram - dummies

Udbrud af et uendeligt loop i dit sprogprogram - dummies

Video: [타로/재회운] 이별을후회 하니? pick a card 2024

Video: [타로/재회운] 이별을후회 하니? pick a card 2024
Anonim

Når du kommer ind i programmeringssløjfer på C-sproget, opdager du glæderne og frygterne af uendelige eller uendelige løkker. Disse sløjfer fortsætter for evigt, fordi enten programmøren glemte at inkludere en måde at afslutte fra sløjfen eller exit-tilstanden er bare aldrig opfyldt. Uanset hvad er uendelige sløjfer en smerte.

Men nogle gange indeholder et C-program en endeløs sløjfe med det formål. Denne type konstruktion kan virke underlig, men grunden til mange moderne programmer er, at de sidder og spinder, mens de venter på, at der sker noget. Sløjfen kan se sådan ud:

til (;;) {check_Keyboard (); check_Mouse (); check_Events (); check_System ();}

Bemærk, at betingelserne inden for parenteserne efter, at søgeordet mangler, hvilket er okay. Resultatet er en endeløs sløjfe, hvor sætningerne kontrolleres gentagne gange, den ene efter den anden: Programmet leder efter aktivitet et eller andet sted. Når aktiviteten er fundet, slukker programmet og gør noget interessant. Men det meste sættes programmet lige i denne slags loop og venter på, at der sker noget. (Den typiske tekstbehandler kan udføre tusindvis af disse sløjfer, da den venter mellem tastetryk, mens du skriver.)

Indtast denne kildekode og gem den til disk. Derefter kompilere og køre programmet:

#include int main () {char ch; sætter ("Typing Program"); sætter ("Type væk:"); for (;;) {ch = getchar ();} returnere (0);}

Ja, du kan skrive. Og du kan se din tekst på skærmen. Men hvordan stopper du?

For at stoppe skal du bryde den endeløse sløjfe, som kan gøres ved at trykke på Ctrl + C. Men det er ikke sådan, du vil have dine programmer til at fungere. I stedet skal en exit betingelse defineres for sløjfen, hvilket er hvor break-søgeordet kommer i spil.

C-sprogudviklerne vidste, at i nogle tilfælde skal en sløjfe blive brudt på grundlag af forhold, der ikke kunne forudsiges eller opstilles inde i forklaringen. Så i deres visdom introducerede de pauseordet.

Hvilken pause gør, er at straks afslutte en sløjfe (enhver C-sprogsløjfe, ikke kun for sløjfer). Når computeren ser pause, antages det kun, at sløjfen er færdig og fortsætter som om sløjfernes endelige tilstand var opfyldt:

#include int main () {char ch; sætter ("Typing Program"); sætter ("Type væk; tryk '~' for at afslutte:"); for (;;) {ch = getchar (); hvis (ch == '~') {break;}} returnere (0);}

Nu er en exit betingelse defineret. Hvis sammenligningen i Linje 12 kontrollerer, om der er indtastet et ~ (tilde) tegn. Hvis det er tilfældet, stoppes sløjfen ved pauseopgørelsen.

Skift kildekoden, så den svarer til det, der netop blev vist. Kompilere og køre. Nu kan du stoppe programmet ved at skrive ~ tegn.

Bemærk at if-sætningen også kan skrives uden bøjlerne:

hvis (ch == '~') brydes;

Denne linje kan være lidt mere læsbar end brug af seler.

Udbrud af et uendeligt loop i dit sprogprogram - dummies

Valg af editor

Hvad er nyt i Microsoft Word 2016? - dummies

Hvad er nyt i Microsoft Word 2016? - dummies

Udgivelsen af ​​Microsoft Word i 2016 er funktionel pakket og kan prale af evnen til at forenkle arbejdsgange og forene arbejdsgrupper. Hvad det betyder for dig er, at det er et meget lettere produkt at bruge i forhold til tidligere versioner. Med funktionelle ændringer, der er indbygget i knapper og faner af Word 2016s båndformede proceslinje, har den ...

Word 2010 Tastaturgenveje - Dummies

Word 2010 Tastaturgenveje - Dummies

Word 2010 tilbyder en række nyttige tastaturgenveje til hurtigt at udføre opgaver. Her er nogle genveje til almindelig Word-formatering, redigering og fil- og dokumentopgaver. Word 2010 Formatering Genveje Kommando Genvej Bånd Placering Fed Ctrl + B Startside Fane, Skrifttype Gruppe Kursiv Ctrl + I Startside, Skriftgruppe Understrege Ctrl + U Startside Fane, Skriftgruppe Center Ctrl + E ...

Word 2007 For Dummies Cheat Sheet - dummies

Word 2007 For Dummies Cheat Sheet - dummies

Word 2007 ser anderledes ud, men tilbyder stadig de praktiske Word hæfteklammer som f.eks. tastaturgenveje til at hjælpe dig med at oprette, formatere, indsætte ting i og flytte gennem dine Word-dokumenter. Og Word 2007 tilbyder også et par nye funktioner, der hjælper dig med at håndtere din tekstbehandling med lethed.

Valg af editor

ASVAB Montering af objekter Subtest: Shapes - dummies

ASVAB Montering af objekter Subtest: Shapes - dummies

Mange mennesker kan finde den anden type montering af objekter problem på ASVAB lettere end forbindelsesproblemerne. Denne type problem er meget som et puslespil, medmindre det ikke resulterer i et billede af Frihedsgudinden eller et kort over USA. Der er også en heck of a ...

ASVAB Aritmetisk Reasoning Subtest: Viser Sammenligninger med Ratioer - Dummies

ASVAB Aritmetisk Reasoning Subtest: Viser Sammenligninger med Ratioer - Dummies

Du skal vide, hvordan du arbejde med forhold for den aritmetiske begrundelse subtest af ASVAB. Et forhold viser et forhold mellem to ting. For eksempel, hvis Margaret investerede i hendes tatoveringslokale i forholdet 2: 1 (eller 2 til 1) til hendes forretningspartner Julie, satte Margaret $ 2 for hver ...

ASVAB Auto & Shop Information Undertest: Drilling, Punching og Gouging Tools - dummies

ASVAB Auto & Shop Information Undertest: Drilling, Punching og Gouging Tools - dummies

Nej, det handler ikke om hånd-til-hånd kamp træning fra grundlæggende træning. Imidlertid vil ASVAB teste din viden om, hvor praktisk du er med boring, stansning og gouging-værktøjer. Masters i butikskunst gør ofte huller i det materiale, de arbejder med for at opbygge det perfekte fuglehus (eller hvad de arbejder på). ...

Valg af editor

EMT-eksamen: Sådan arbejder du med et team under et nødsituation

EMT-eksamen: Sådan arbejder du med et team under et nødsituation

Arbejder helt alene som en EMT er ekstremt sjælden. Selv under disse omstændigheder vil du sandsynligvis interagere med andre sundhedspleje- og offentlige sikkerhedsudbydere på et eller andet tidspunkt under et opkald. Mere sandsynligt vil du fungere som medlem af et hold. Det kan være en enkelt partner, et brandmandsbesætningsmedlem eller endda en nødsituation ...

EMT-eksamen: Sådan dokumenterer du dine tilfælde - dummier

EMT-eksamen: Sådan dokumenterer du dine tilfælde - dummier

Til eksamen og i feltet EMT er forpligtet til at dokumentere, hvad du observerede om patienten og miljøet, de resultater, du vurderede, den omhu du gav, og eventuelle ændringer i patientens tilstand, mens du var i din pleje. Dokumentation kan ske enten på papirformularer eller elektronisk med en computer, bærbar computer, ...