Menuju Perintah Tertentu Bahasa C Menggunakan Goto Statement
![]() |
Penggunaan Statement goto Bahasa C |
Sintak:
- label:
- goto label:
Pada contoh sintak, baris pertama memberitahukan kompilator bahwa statement goto akan melompati ke bagian statement yang telah ditandai menggunakan label tertentu. Pada bagian label, baris tersebut digunakan sebagai identifier dari definisi user yang mengindikasikan target yang akan dituju dari statement goto. Statement goto yang telah diarahkan untuk melompat dan menuju ke label tertentu kemudian akan segera mengeksekusi baris kode program yang terdapat setelah kode label yang ditentukan. Kode 'label:' juga dapat ditampilkan sebelum bagian statement 'goto label;' yang berada sebelum sintak goto.
Tipe1: pada kondisi ini, akan diperlihatkan suatu situasi yang sama seperti yang diperlihatkan pada sintak. Programmer perlu melakukan penulisan kode program dimana suatu fungsi harus dijalankan jika sebuah angka atau kondisi tertentu telah terpenuhi dan hasilnya akan dicetak pada layar sesuai dengan perintah fungsi yang dituju oleh statement goto. Berikut adalah ilustrasi programnya.
Contoh:
// Program Bahasa C untuk
// memeriksa apakah suatu
// bilangan adalah angka genap
// atau bukan, menggunakan
// statement goto.
#include <stdio.h>
// Fungsi untuk memeriksa
// bilangan genap.
void checkEvenOrNot(int num)
{
if (num % 2 == 0)
// jump to even
goto even;
else
// jump to odd
goto odd;
even:
printf("%d is even", num);
// return if even
return;
odd:
printf("%d is odd", num);
}
int main() {
int num = 26;
checkEvenOrNot(num);
return 0;
}
Tipe2: Pada kondisi ini, akan diperlihatkan suatu situasi yang sama seperti yang diperlihatkan pada bagian sintak. Programmer harus membuat suatu baris program untuk mencetak nilai angka dari 1 hingga 10 menggunakan statement goto Bahasa C. Berikut adalah ilustrasi penggunakan statement goto tersebut.
Contoh:
// Program Bahasa C untuk
// mencetak angka dari angka 1
// hingga angka 10 menggunakan
// statement goto.
#include <stdio.h>
// Fungsi untuk mencetak angka
// 1 hingga angka 10.
void printNumbers()
{
int n = 1;
label:
printf("%d ",n);
n++;
if (n <= 10)
goto label;
}
// Program driver untuk
// menguji fungsi printNumers.
int main() {
printNumbers();
return 0;
}
Output:1 2 3 4 5 6 7 8 9 10
Kekurangan Statement Goto:
- Penggunaan statement goto sebaiknya dikurangi penggunaannya, karena membuat eksekusi program menjadi sangat kompleks.
- Penggunaan statement goto membuat proses penyelesaian tugas, analisis, dan verifikasi baris kode program menjadi sangat sulit ketika dijalankan.
- Penggunaan statement goto pada umumnya hanya untuk menghindari penggunaan statement break dan continue, yang pada dasarnya jauh lebih direkomendasikan dari pada statement goto pada Bahasa C.
- Fungsi Prototype pada Bahasa C beserta Penjelasannya [klik]
- Deklarasi Fungsi Bahasa C Sebelum dan Sesudah Fungsi Main [klik]
- Statement Return VS Statement EXIT Pada Fungsi Main Bahasa C [klik]
- Menghitung Variabel Angka Dari Argumen Bahasa C [klik]
- Perintah Evaluasi Fungsi Parameter Bahasa C [klik]
- Fungsi Overloading Bahasa C Beserta Penjelasannya [klik]
- Pengembalian Nilai Fungsi Ganda Bahasa C [klik]
Apa yang dimaksud dengan statement Goto pada Bahasa C?
BalasHapusStatement Goto pada bahasa C adalah statement lompat yang digunakan untuk melompat dari satu bagian kode ke bagian kola lain dari bahasa C. Statement goto membantu dalam proses pengubahan aliran normal program sesuai dengan kebutuhan yang akan dilaksanakan oleh user.
HapusStatement goto dapat digunakan untuk mengubah aliran kontrol dalam suatu program. Meskipun statement goto dapat digunakan untuk membuat perulangan dengan waktu pengulangan yang terbatas, namun tetap disarankan untuk menggunakan struktur perulangan lain seperti for, while, dan do-while.
HapusPenggunaan statement goto membutuhkan label untuk proses pendefinisian tujuan dalam program yang digunakan.
HapusApakah penggunaan statement goto dianjurkan pada bahasa C?
BalasHapusPenggunaan statement goto sangat tidak dianjurkan dalam bahasa pemrograman C karena kondisi apapun, karena dapat membuat proses kerja program menjadi lebih sulit dalam pelacakan aliran kontrol suatu program, dan akan membuat program sulit untuk dipahami dan sulit untuk dimodifikasi.
Hapus