Goto
C++ goto ifadesi atlama ifadesi olarak da bilinir. Kontrolü programın diğer kısmına aktarmak için kullanılır. Koşulsuz olarak belirtilen etikete atlar.
Syntax (Sözdizimi)
goto etiket1; .. . etiket1:kodifadesi;
etiket1: kodifadesi; .. . goto etiket1;
Not: Yukarıdaki sözdiziminde, ilk satır derleyiciye etiket olarak işaretlenmiş ifadeye gitmesini veya bu ifadeye atlamasını söyler. Burada etiket, hedef ifadeyi gösteren kullanıcı tanımlı bir tanımlayıcıdır. “Etiket:” ifadesinin hemen ardından gelen ifade, hedef ifadedir. ‘Etiket:’ yukarıdaki sözdizimindeki ‘goto etiket’ ifadesinden önce de görünebilir. “Kod ifadesi” kısmına gerekli c++ kod parçacıklarını yazabiliriz.
Code Diagram (Kod Diagramı)
Örnek:
#include <iostream> using namespace std; int main() { int sayi; cout << "Sayı giriniz:"; cin >> sayi; if (sayi % 2 == 0) { goto cift; } else { goto tek; } cift: cout << sayi <<" sayısı çiftir."; return 0; tek: cout << sayi << " sayısı tektir."; return 0; }
Giriş:
Sayı giriniz:17
Çıktı:
17 sayısı tektir.
Örnek:
#include <iostream> using namespace std; int main() { int x=1, sayi, tekToplam, ciftToplam; cout << "Sayı giriniz:"; cin >> sayi; islem: if (x % 2 == 0) { ciftToplam += x; x++; } else { tekToplam += x; x++; } if(x<=sayi) { goto islem; } cout << "Çift sayıların toplamı: " << ciftToplam << " Tek sayıların toplamı: " << tekToplam << endl; return 0; }
Giriş:
Sayı giriniz:6
Çıktı:
Çift sayıların toplamı: 12 Tek sayıların toplamı: 9