Video: String Theory Explained – What is The True Nature of Reality? 2024
Saat Anda masuk ke rangkaian pemrograman dalam bahasa C, Anda menemukan kegembiraan dan ketakutan dari lingkaran tak berujung, atau tak terbatas . Loops ini berlanjut selamanya karena baik programmer lupa memasukkan cara keluar dari loop atau kondisi exit tidak pernah terpenuhi. Either way, loop tak berujung adalah rasa sakit.
Tapi terkadang program C berisi loop tanpa akhir yang sengaja. Jenis konstruksi ini mungkin tampak aneh, namun dasar dari banyak program modern adalah mereka duduk dan berputar saat mereka menunggu sesuatu terjadi. Lingkaran itu mungkin terlihat seperti ini:
untuk (;;) {check_Keyboard (); check_Mouse (); check_Events (); check_System ();}
Perhatikan bahwa kondisi di dalam tanda kurung setelah kata kunci hilang, tidak apa-apa. Hasilnya adalah lingkaran tak berujung di mana pernyataan diperiksa berulang kali, satu per satu: Program ini mencari aktivitas di suatu tempat. Saat aktivitas ditemukan, program berjalan dan melakukan sesuatu yang menarik. Tapi sebagian besar waktu, program hanya duduk di jenis loop, menunggu sesuatu terjadi. (Pengolah kata biasa dapat melakukan ribuan loop ini saat menunggu antara penekanan tombol saat Anda mengetik.)
Masukkan kode sumber ini dan simpan ke disk. Kemudian kompilasi dan jalankan program:
#include int main () {char ch; puts ("Typing Program"); puts ("Type away:"); untuk (;;) {ch = getchar ();} kembali (0);}
Ya, Anda bisa mengetik. Dan Anda bisa melihat teks Anda di layar. Tapi bagaimana Anda berhenti?
Untuk berhenti, Anda harus memecahkan loop tak berujung, yang bisa dilakukan dengan menekan Ctrl + C. Tapi bukan itu cara Anda ingin program Anda bekerja. Sebagai gantinya, kondisi keluar harus ditentukan untuk loop, di mana kata kunci jeda mulai diputar.
Pengembang bahasa C tahu bahwa, dalam beberapa kasus, sebuah loop harus dipecah berdasarkan kondisi yang tidak dapat diprediksi atau disiapkan di dalam untuk pernyataan. Jadi, dalam kebijaksanaan mereka, mereka mengenalkan kata kunci jeda.
Apa yang dimaksud dengan istirahat adalah berhenti dari satu lingkaran (lingkaran bahasa C, bukan hanya untuk loop). Ketika komputer melihat break, itu hanya mengasumsikan bahwa loop selesai dan berlanjut seolah-olah kondisi akhir loop terpenuhi:
#include int main () {char ch; puts ("Typing Program"); puts ("Type away; tekan '~' untuk berhenti:"); untuk (;;) {ch = getchar (); if (ch == '~') {break;}} return (0);}
Sekarang kondisi keluar didefinisikan. Jika perbandingan di Line 12 memeriksa apakah karakter ~ (tilde) dimasukkan. Jika demikian, loop dihentikan oleh break statement.
Ubah kode sumber Anda sehingga sesuai dengan yang baru saja ditunjukkan. Kompilasi dan jalankan. Sekarang, Anda bisa menghentikan program dengan mengetikkan ~ karakter.
Perhatikan bahwa pernyataan if juga bisa ditulis tanpa kawat gigi:
if (ch == '~') break;
Baris ini mungkin sedikit lebih mudah dibaca daripada menggunakan kawat gigi.