Video: Calling All Cars: The Long-Bladed Knife / Murder with Mushrooms / The Pink-Nosed Pig 2024
C dilinde programlama döngülerine girdiğinizde, sonsuz ya da sonsuz döngülerinin sevincini ve dehşetini keşfedersiniz. Bu döngüler sonsuza kadar sürüyor çünkü programcı döngüden çıkmanın bir yolunu da unutmuş veya çıkış koşulları yerine getirilmemiştir. Her iki durumda da, sonsuz döngüler bir acı.
Fakat bazen bir C programı amaç üzerinde sonsuz bir döngü içeriyor. Bu yapı türü tuhaf görünebilir, ancak pek çok modern programın temeli, bir şey olmasını beklerken oturup dönmeleridir. Döngü şuna benzeyebilir:
için (;;) {check_Keyboard (); check_Mouse (); check_Events (); check_System ();}
for anahtar kelimesinden sonra parantez içindeki koşulların eksik olduğunu ve tamamının doğru olduğuna dikkat edin. Sonuç, ifadelerin art arda kontrol edildiği sonsuz bir döngüdür: Program bir yere aktivite arıyor. Aktivite bulunduğunda program kapanır ve ilginç bir şeyler yapar. Fakat çoğu zaman, program sadece bir döngüye oturur ve bir şeyler olmasını bekler. (Tipik sözcük işlemci, yazarken tuş vuruşları arasında bekler gibi binlerce döngü gerçekleştirebilir.
Bu kaynak kodunu girin ve diske kaydedin. Ardından programı derleyin ve çalıştırın:
#include int main () {char ch; koyar ("Yazma Programı"); koyar ("Uzakla yazın"); (;;) için {ch = getchar ();} return (0);}
Evet, yazabilirsiniz. Ve metninizi ekranda görebilirsiniz. Ama nasıl duruyorsun?
Durdurmak için Ctrl + C tuşlarına basarak bitmeyen döngüyü kırmanız gerekiyor. Ancak programlarınızın çalışmasını istemiyorsunuz. Bunun yerine, break anahtarının yürütüldüğü döngü için bir çıkış koşulu tanımlanmalıdır.
C dil geliştiricileri, bazı durumlarda, döngülerin, for ifadesinde öngörülemeyecek veya ayarlanamayan koşullara dayanarak parçalanması gerektiğini biliyordu. Böylece, bilgeliklerinde, break anahtar kelimesini sundular.
Ne kopma bir döngüden hemen çıkmaktır (sadece döngüler için değil, herhangi bir C dili döngüsü). Bilgisayar kesildiğinde sadece döngünün yapıldığını varsayıyor ve sanki döngü bitiş koşuluna uyulduğu gibi devam ediyor:
#include int main () {char ch; koyar ("Yazma Programı"); koyar ("Uzak durun, çıkmak için '~' tuşuna basın:"); için (;;) {ch = getchar (); if (ch == '~') {break;}} return (0);}
Şimdi bir çıkış durumu tanımlandı. Satır 12'de if karşılaştırması, bir ~ (tilde) karakterinin girilip girilmediğini denetler. Eğer öyleyse, döngü break ifadesi tarafından durdurulur.
Kaynak kodunuzu, gösterilenlerle eşleşecek şekilde değiştir. Derleyin ve çalıştırın. Şimdi, ~ karakterini yazarak programı durdurabilirsiniz.
if ifadesinin köşeli ayraçlar olmadan da yazılabileceğini unutmayın:
if (ch == '~') break;
Bu satır, parantezleri kullanmaktan biraz daha okunabilir olabilir.