C goto Izjava

Sadržaj

U ovom uputstvu naučit ćete stvoriti izraz goto u programiranju na C-u. Također, naučit ćete kada koristiti goto izjavu, a kada ne.

gotoIzjava omogućuje nam da prijenos kontrolu programa na određenom oznakom.

Sintaksa goto Izjave

 goto label;… … label: statement; 

Oznaka je identifikator. Kada gotose naiđe na naredbu, kontrola programa preskače label:i započinje s izvršavanjem koda.

Primjer: goto Izjava

 // 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; )

Izlaz

 1. Unesite broj: 3 2. Unesite broj: 4.3 3. Unesite broj: 9.3 4. Unesite broj: -2.9 Zbroj = 16.60 Prosjek = 5.53

Razlozi za izbjegavanje goto

Korištenje gotoizjave može dovesti do koda koji je pogrešan i teško ga je slijediti. Na primjer,

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

Također, gotoizjava vam omogućuje da radite loše stvari, poput iskakanja iz opsega.

Svejedno, gotoponekad može biti korisno. Na primjer: za prekid iz ugniježđenih petlji.

Trebate li koristiti goto?

Ako mislite da upotreba gotoizjave pojednostavljuje vaš program, možete je koristiti. To je rečeno, gotorijetko je korisno i možete stvoriti bilo koji C program bez ikakve upotrebe goto.

Evo citata Bjarnea Stroustrupa, tvorca C ++-a, "Činjenica da" goto "može učiniti bilo je upravo razlog zašto ga ne koristimo."

Zanimljivi članci...