Pernyataan Goto dalam C#, juga dikenali sebagai Pernyataan Lompat, memindahkan aliran program terus ke pernyataan berlabel. Pernyataan ini mengalihkan kawalan program ke bahagian lain. Salah satu aplikasi yang paling biasa bagi pernyataan Goto adalah untuk mengalihkan kawalan program ke titik tertentu dalam pernyataan suis. Dalam kes gelung bersarang dalam, pernyataan goto boleh menjadi fungsi yang sangat baik untuk keluar daripada gelung. Gelung bersarang diteruskan, dan atur cara menunggu sehingga penghujung gelung, tetapi jika keadaan dipenuhi di tengah jalan, kita boleh melaksanakan pernyataan goto dan cepat keluar dari gelung dan menjimatkan masa.
Sintaks:
Berikut ialah sintaks standard untuk pernyataan goto:
goto statement_name;
Sintaks bermula dengan mengisytiharkan kata kunci goto dan kemudian menggunakan nama pernyataan. Apabila dalam atur cara bila-bila masa baris ini akan dilaksanakan, atur cara akan melompat ke bahagian statement_name program. Apabila mana-mana program, bila-bila masa atau pada bila-bila masa, terjumpa sintaks goto yang disebutkan di atas, ia akan melaksanakan pernyataan goto dan melompat ke statement_name yang disebutkan, dan begitulah cara kawalan beralih.
Mari kita fahami cara kerja pernyataan goto dalam carta alir.
Merujuk kepada carta alir di atas, kita boleh memahami aliran kod program dengan pernyataan goto. Kami mempunyai berbilang pernyataan, 1,2 dan 3, dan apabila kod bergerak ke hadapan, ia bertemu dengan pernyataan goto dalam pernyataan ke-3. Dan dari pernyataan ke-3, kod akan melompat ke mana-mana penyataan goto menunjuk. Dalam sampel kami, kami mempunyai pernyataan goto kami merujuk kepada pernyataan 1. Bermaksud apabila kod terjumpa pada pernyataan goto, ia akan menyemak keadaan dan berdasarkan keputusan syarat, kod itu sama ada akan bergerak ke hadapan, yang bermaksud ia akan menamatkan program, atau pernyataan goto akan dilaksanakan, dan kod akan membuat lompatan.
Pernyataan Goto ialah Pernyataan Lompat. Ia berfungsi dalam mana-mana program dengan cara untuk menyediakan jalan keluar yang cepat. Cara ia berfungsi, Untuk memindahkan kawalan program ke mana-mana titik tertentu pada bila-bila masa adalah tujuan utama Pernyataan Goto dalam C#.
Sekarang kita telah memahami cara Goto Statement berfungsi, mari kita tunjukkan cara kerja pernyataan Goto dengan kod yang betul.
Kod:
using System; public class sampleGoto { public static void Main(string[] args) { eligibility: Console.WriteLine("You are not an adult yet!"); Console.WriteLine("Enter your age:\n"); int age = Convert.ToInt32(Console.ReadLine()); if (age < 18) { goto eligibility; } else { Console.WriteLine("You are an adult!"); Console.Read(); } } }
Tafsiran Kod: Kami menggunakan fail ruang nama, kemudian mulakan kelas kami dengan kelas utama di dalamnya. Kemudian kami mempunyai kata kunci goto kami, "kelayakan," yang mempunyai kenyataan cetakan, "Anda belum dewasa lagi!". Selepas mencetak kenyataan ini, program akan bergerak ke hadapan dan melaksanakan baris seterusnya. Di sini "Masukkan umur anda:" ialah penyata yang akan dicetak dan kami perlu memasukkan nilai. Setelah memasukkan nilai, atur cara akan memasukkan pernyataan if dan menyemak syarat tersebut. Setelah syarat memenuhi, kod akan meneruskan ke pernyataan seterusnya, yang termasuk pernyataan goto kami jika seseorang memasukkan nilai selain daripada 18.
Apabila program kami menyentuh penyataan goto, ia akan melompat ke bahagian yang disebutkan, iaitu kelayakan, dan bergerak ke hadapan dari titik itu. Program ini akan memaparkan mesej "Anda sudah dewasa!" kepada pengguna jika mereka memenuhi syarat tersebut. Bermakna program telah tamat. Rujuk tangkapan skrin yang dilampirkan di bawah untuk output.
Seperti yang ditunjukkan dalam tangkapan skrin, apabila kami melepasi nilai kurang daripada 18, ia mencetak pernyataan pertama, dan kemudian apabila kami memasukkan nilai lebih daripada 18, program mencetak pernyataan else. Memandangkan kita telah menunjukkan program mudah dengan pernyataan Goto, mari cuba contoh lain untuk menjalankan operasi yang sama.
Kod:
using System; public class sampleGoto { public static void Main(string[] args) { result: Console.WriteLine("Sorry! you did not pass the test."); Console.WriteLine("Please submit your Passing Percentage:\n"); int age = Convert.ToInt32(Console.ReadLine()); if (age < 40) { goto result; } else { Console.WriteLine("Congrats! You have passed the Test"); Console.Read(); } } }
Tafsiran kod: Sama seperti program pertama, kami telah menunjukkan kerja Penyata Goto. Syarat mudah boleh menyemak dengan mudah sama ada nilai input melebihi 40. Selepas melaksanakan, program akan mencetak baris pertama dengan "Maaf! kamu tidak lulus ujian.” Kemudian program akan meminta pengguna memasukkan nilai berangka. Program ini akan memasuki gelung IF ELSE untuk menyemak sama ada nilai yang dimasukkan adalah kurang daripada atau lebih besar daripada 40 sebaik sahaja anda memasukkan nilai. Jika nilai yang dimasukkan kurang daripada 40, program akan melaksanakan pernyataan goto dan melompat ke pernyataan berlabel. Dan Jika nilai yang dimasukkan lebih besar daripada 40, maka program akan diteruskan dan memasuki bahagian lain. Di bahagian lain, ia akan mencetak "Tahniah! Anda telah lulus Ujian” dan tamat.
Rujuk tangkapan skrin yang dilampirkan di bawah untuk output yang betul.
Sekiranya anda Melaksanakan GOTO: Adalah dinasihatkan untuk tidak melaksanakan atau menggunakan pernyataan goto kerana logik program akan menjadi lebih kompleks. Selain itu, tidak mudah untuk mengesan aliran kod sebaik sahaja program menemui kenyataan goto. Sebaliknya, jika anda fikir menggunakan Goto akan melancarkan aliran program, maka anda bebas untuk menggunakannya. Goto jarang digunakan.
Kami telah memahami apa itu pernyataan Goto dalam C#. Kami telah memahami secara meluas cara kerja dan sintaks untuk Pernyataan Goto. Kemudian, dengan contoh, kami menunjukkan kerja Penyata Goto. Kami melaksanakan pernyataan Goto dengan dua contoh dengan senario yang berbeza. Menggunakan Pernyataan Goto secara meluas dalam program yang panjang adalah tidak digalakkan kerana ia boleh merumitkan struktur program dan menjadikannya lebih mencabar untuk nyahpepijat secara terus.
Atas ialah kandungan terperinci Goto Statement dalam C#. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!