Lingkup Variabel Dalam Bahasa C |
Kali ini sanabila.com ingin membahas mengenai ruang lingkup variabel dalam bahasa C. Sebelumnya sanabila.com sudah membahas seputar variabel dalam bahasa C, yaitu:
- Batasan Penamaan Variabel Dalam Bahasa C
- Inisialisasi Variabel Dalam Bahasa C
- Lingkup Variabel Dalam Bahasa C
- Jenis Variabel Dalam Bahasa C Part 1
- Jenis Variabel Dalam Bahasa C Part 2
A. Variabel Global
Variabel global merupakan variabel yang dideklarasikan di luar fungsi, baik fungsi utama maupun fungsi pendukung.
Berikut contoh penggunaannya dalam program :
#include <stdio.h>
/* Mendeklarasikan variabel global */
int a;
/* Memasukkan nilai ke dalam variabel x dengan nilai 10 */
a = 50;
/* Mendefinisikan fungsi lain dengan nama outputA() */
void outputA(void) {
printf("Nilai a yang dipanggil dari fungsi
outputA()\t : %d\n", a);
}
/* Fungsi utama */
int main(void) {
printf("Nilai a yang dipanggil dari fungsi main()\t\t\t :
%d\n", a);
return 0;
}
Maka hasilnya adalah :
Nilai a yang dipanggil dari fungsi outputA() : 50
Nilai a yang dipanggil dari fungsi main() : 50
Penjelasan Singkat :
Dari hasil diatas didapatkan bahwa variabel a bersifat global, artinya dia akan dikenali dan dapat dieksekusi oleh setiap fungsi yang terdapat di dalam program (fungsi main() dan outputA()).
B. Variabel Lokal
Variabel lokal hanya bisa dideklarasikan di dalam sebuah fungsi sehingga hanya dapat dikenali dan dieksekusi oleh fungsi itu saja. Dengan kata lain, sebuah fungsi tidak dapat mengenali dan mengakses variabel yang dideklarasikan di dalam fungsi lainnya. Oleh karena itu, nama variabel lokal dari fungsi yang satu dengan fungsi lainya bisa sama.
Berikut contoh penggunaannya dalam program :
#include <stdio.h>
void nilai1(void) {
/* Mendeklarasikan variabel a yang bersifat lokal */
int a;
a = 24;
printf("Nilai a di dalam Nilai1() : %d\n", a);
}
void nilai2(void) {
/* Mendeklarasikan variabel a yang bersifat lokal */
int a;
/* Mendeklarasikan variabel b yang bersifat lokal */
int b = 10;
a = 15;
printf("Nilai a di dalam Nilai2() : %d\n", a);
printf("Nilai b di dalam Nilai2() : %d\n", b);
}
/* Fungsi utama */
int main() {
/* Melakukan pemanggilan terhadap fungsi Nilai1() dan
Nilai2() */
Nilai1();
Nilai2();
return 0;
}
Maka Hasilnya adalah :
Nilai a di dalam Nilai1() : 24
Nilai a di dalam Nilai2() : 15
Nilai b di dalam Nilai2() : 10
Penjelasan Singkat :
Nilai b yang terdapat dalam Nilai2() hanya akan dikenali oleh Nilai2() saja sedangkan Nilai1() dan fungsi main() tidak dapat mengenailnya. Begitupun dengan variabel a yang dimiliki oleh Nilai1() dan Nilai2(), keduanya merupakan variabel yang berbeda dan hanya dikenali dalam fungsi bersangkutan saja.
Daftar Pustaka :
- Cara Mudah Mempelajari Pemrograman C & Implementasinya. Oleh I Made Joni Budi Raharjo. Diakses pada tanggal 25 Mei 2015 jam 12.15 WIB.