Vyhlásenie C goto

Obsah

V tomto tutoriále sa naučíte vytvárať príkaz goto v programovaní C. Dozviete sa tiež, kedy a kedy používať príkaz goto a kedy ho nepoužívať.

Príkaz gotonám umožňuje preniesť kontrolu nad programom na zadaný štítok.

Syntax príkazu goto

 goto label;… … label: statement; 

Štítok je identifikátor. Keď gotosa vyskytne príkaz, riadenie programu skočí na label:a začne vykonávať kód.

Príklad: prechod na vyhlásenie

 // Program to calculate the sum and average of positive numbers // If the user enters a negative number, the sum and average are displayed. #include int main() ( const int maxInput = 100; int i; double number, average, sum = 0.0; for (i = 1; i <= maxInput; ++i) ( printf("%d. Enter a number: ", i); scanf("%lf", &number); // go to jump if the user enters a negative number if (number < 0.0) ( goto jump; ) sum += number; ) jump: average = sum / (i - 1); printf("Sum = %.2f", sum); printf("Average = %.2f", average); return 0; )

Výkon

 1. Zadajte číslo: 3 2. Zadajte číslo: 4,3 3. Zadajte číslo: 9,3 4. Zadajte číslo: -2,9 Súčet = 16,60 Priemer = 5,53

Dôvody, prečo sa treba vyhnúť

Použitie gotovyhlásenia môže viesť k chybnému a ťažko sledovateľnému kódu. Napríklad,

 one: for (i = 0; i 5) ( goto three; )… 

Toto gotovyhlásenie tiež umožňuje robiť zlé veci, ako napríklad vyskočiť z rozsahu.

To je povedané, gotomôže byť niekedy užitočné. Napríklad: vymaniť sa z vnorených slučiek.

Mali by ste použiť goto?

Ak si myslíte, že použitie gotopríkazu zjednodušuje váš program, môžete ho použiť. To je povedané, gotoje zriedka užitočné a môžete vytvoriť akýkoľvek program C bez gotoúplného použitia .

Tu je citát Bjarneho Stroustrupa, tvorcu C ++, „Skutočnosť, že„ goto “môže robiť čokoľvek, je presne dôvod, prečo ho nepoužívame.“

Zaujímavé články...