Rumah > pembangunan bahagian belakang > C++ > Bagaimana untuk Memecahkan Gelung dari Dalam Pernyataan Suis dalam C?

Bagaimana untuk Memecahkan Gelung dari Dalam Pernyataan Suis dalam C?

Mary-Kate Olsen
Lepaskan: 2024-10-30 03:35:28
asal
551 orang telah melayarinya

How to Break Out of Loops from Within Switch Statements in C  ?

Memecahkan Gelung daripada Dalam Suis

Dalam C , kadangkala perlu untuk keluar daripada gelung dari dalam pernyataan suis. Dalam coretan kod yang disediakan, pengguna ingin keluar dari gelung apabila keadaan mesej ditetapkan kepada SELESAI.

Menggunakan Pernyataan goto

Cara paling mudah untuk mencapai ini adalah dengan menggunakan pernyataan goto, seperti yang ditunjukkan dalam kod di bawah:

<code class="c++">while ( ... ) {
   switch( ... ) {
     case ...:
         goto exit_loop;

   }
}
exit_loop: ;</code>
Salin selepas log masuk

Dalam contoh ini, pernyataan goto melompat ke label exit_loop apabila keadaan ditetapkan kepada DONE, dengan berkesan memecahkan kedua-duanya pernyataan suis dan gelung while.

Menggunakan Pembolehubah Bendera

Pendekatan alternatif ialah menggunakan pembolehubah bendera. Ini boleh menjadi pembolehubah boolean yang ditetapkan kepada benar apabila syarat yang diingini dipenuhi dalam pernyataan suis. Gelung kemudiannya boleh dipecahkan dengan menyemak pembolehubah bendera selepas pernyataan suis.

Berikut ialah contoh:

<code class="c++">bool should_exit = false;

while ( ... ) {
   switch( ... ) {
     case ...:
         should_exit = true;
         break;
     // ... more stuff ...
     case DONE:
         should_exit = true;
         break;
   }

   if (should_exit) {
       break;
   }
}</code>
Salin selepas log masuk

Dalam kes ini, bendera should_exit ditetapkan kepada benar apabila keadaan adalah ditetapkan kepada SELESAI dan gelung dipecahkan apabila bendera disemak selepas pernyataan suis.

Atas ialah kandungan terperinci Bagaimana untuk Memecahkan Gelung dari Dalam Pernyataan Suis dalam C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan