C Switch Case İfadeleri

C Switch Case Statements



Switch deyimi veya basitçe bir case deyimi, bir değişkenin veya bir ifadenin değerine dayalı olarak bir programın yürütülmesini belirleyen bir kontrol akışı mekanizmasıdır.

Bir switch ifadesi kullanmak, birden çok koşulu test etmenize ve yalnızca koşul doğruysa belirli bir bloğu yürütmenize olanak tanır. if…else if….else ifadesine benzer şekilde çalışsa da, sözdizimi daha basit ve okunması ve yönetilmesi daha kolaydır.







Bu öğretici, C programlamada switch deyimlerinin nasıl oluşturulacağını ve bunlarla nasıl çalışılacağını göstermeye odaklanır.



Temel Kullanım

Switch ifadesinin uygulanması kolaydır. Genel sözdizimi aşağıda gösterildiği gibidir:



değiştirmek (ifade) {
casevar1:
// kod
kırmak;
casevar2:
//kod
kırmak;
casevar3:
// kod
kırmak;
casevarN:
// kod
kırmak;
...
….
….
varsayılan:
//kod
}

Nasıl çalışır

switch ifadesi, her bir vaka bloğunu değerlendirmek için basit bir mantık uygular.





Anahtar bloğu içindeki ifadeyi değerlendirerek başlar. Ardından, anahtar bloğundan gelen değeri her bir durum bloğuyla karşılaştırır.

Tanımlanmış vaka bloklarından birinin içinde bir eşleşme bulduğunda, break anahtar sözcüğüyle karşılaşana kadar bu blok içindeki kodu yürütür.



Tanımlanan vaka bloklarından herhangi birinde bir eşleşme ile karşılaşmazsa, varsayılan ifadeye atlar ve içindeki kodu yürütür. Eşleşmeyen bir senaryo için gerekli bir eylem yoksa varsayılan blok isteğe bağlıdır ve atlanabilir

NOT: Eşleşen bloktan sonra tüm ifadelerin yürütülmesini önlemek için her bir vaka ifadesinin bir break ifadesi ile sonlandırıldığından emin olmak iyidir.

C Switch Case İfade Örneği

Switch ifadesini çok basit bir örnekle açıklayalım:

#Dahil etmek

() {
intnerede= 5;
değiştirmek (nerede) {
durum3:
baskı ('Değer 3');
kırmak;
vaka4:
baskı ('Değer 4');
kırmak;
vaka5:
baskı ('Değer 5');
kırmak;
varsayılan:
baskı ('Değer ne 3, ne 4, ne de 5');
}
dönüş0;
}

Yukarıdaki örneği çalıştırırsak, aşağıdakine benzer bir çıktı almalıyız:

değer5

Aşağıdaki akış şeması, yukarıdaki programın mantığını göstermektedir:

İç İçe Anahtar Bildirimi

C, bir switch deyimi içinde iç içe anahtar deyimlerine sahip olmanızı sağlar. İç içe anahtar ifadesi, dış anahtarın değerine bağlanır.

Aşağıdaki örneği göz önünde bulundurun:

#Dahil etmek

() {
intborç= 5;
intaccess_code= 2028;
değiştirmek (borç) {
dava 1:
değiştirmek (giriş kodu) {
vaka2021:
baskı ('[+] Geçerli erişim kodu!');
kırmak;
varsayılan:
baskı ('[-] Geçersiz giriş kodu!');
}
kırmak;
varsayılan:
baskı ('[-] Yalnızca Bölüm 1'e izin verilir!');
}
dönüş0;
}

Yukarıdaki örnekte iki switch ifadesi uyguluyoruz. İlki, sağlanan bölümün 1 olup olmadığını kontrol eder. Doğruysa, sonraki anahtar bloğuna ilerler ve geçerli erişim kodunu kontrol eder.

Dept değeri bir değilse, yürütme varsayılan bloğa taşınır.

Yukarıdaki kodun doğru ve yanlış bölüm ve erişim kodu ile çalıştırılması aşağıdadır.

İlk örnekte, hem borç hem de erişim kodu doğrudur; bu nedenle, yürütme hiçbir zaman varsayılan bloklara ulaşmaz.

İkinci örnekte, hem borç hem de erişim kodu yanlıştır; bu nedenle, yürütme hemen ilk varsayılan bloğa atlar.

Anahtar İfadeleri için Yönergeler

Aşağıdakiler, C'de switch deyimleri oluştururken dikkat edilmesi gereken hızlı yönergelerdir.

  1. switch anahtar sözcüğüne bir ifade iletmelisiniz.
  2. Vaka ifadeleri benzersiz değerleri kontrol etmelidir
  3. Break anahtar sözcüğünü kullanarak her vaka bloğunu sonlandırın.
  4. Birden çok anahtar ifadesini iç içe yerleştirebilirsiniz.
  5. Eşleşmeyen durumlar için bir eylem gerektiğinde varsayılan bir ifade ekleyebilirsiniz.

Çözüm

Bu kılavuz, C switch deyimleri oluşturmanın ve kullanmanın temelleri konusunda size yol gösterdi. Switch deyimleri, ve if else deyimiyle uygulanması zor olabilecek karmaşık karar durumlarınız olduğunda kullanışlıdır.