Ebben az oktatóanyagban megtanulja létrehozni a goto utasítást C programozással. Azt is megtudhatja, hogy mikor kell használni a goto utasítást, és mikor nem.
Az goto
utasítás lehetővé teszi számunkra, hogy a program irányítását átadjuk a megadott címkének.
A goto nyilatkozat szintaxisa
goto label;… … label: statement;
A címke azonosító. Amikor az goto
utasítással találkozik, a program vezérlője ugrik label:
és elkezdi futtatni a kódot.
Példa: goto nyilatkozat
// 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; )
Kimenet
1. Írjon be egy számot: 3 2. Írjon be egy számot: 4.3 3. Írjon be egy számot: 9.3 4. Írjon be egy számot: -2.9 Összeg = 16.60 Átlagos = 5.53
A goto elkerülésének okai
Az goto
utasítás használata hibás és nehezen követhető kódhoz vezethet. Például,
one: for (i = 0; i 5) ( goto three; )…
A goto
nyilatkozat lehetővé teszi, hogy rossz dolgokat hajtson végre, például kiugorjon a hatókörből.
Ennek ellenére goto
néha hasznos lehet. Például: szakadni a beágyazott hurkoktól.
Használja a goto-t?
Ha úgy gondolja, hogy az goto
utasítás használata leegyszerűsíti a programot, használhatja azt. Ennek ellenére goto
ritkán hasznos, és bármilyen C programot létrehozhat anélkül, hogy goto
teljesen felhasználná .
Íme egy idézet Bjarne Stroustruptól, a C ++ alkotójától: "Az a tény, hogy a" goto "bármire képes, pontosan ezért nem használjuk."