dalam bahasa c jenis variabel dibedakan menjadi empat macam yaitu variabel otomatis, statis, eksternal, dan register.
1) variabel otomatis
penjelasan:variabel otomatis adalah variable yang hanya dikenal di dalam suatu blok saja (dalam tanda {…}), baik itu blok pemilihan, pengulangan ataupun fungsi. dikatakan ‘otomatis’ karena variable ini dialokasikan pada saat pendeklarasian dan akan didealokasikan secara otomatis ketika program keluar dari suatu blok. walaupun bersifat opsional, namun untuk mempertegas bahwa variable tersebut sebagai variable otomatis, kita dapat menggunakan kata kunci auto pada saat pendeklarasian.
syntax:
auto tipe_data nama_variabel
contoh:
#include int main(void) { int a; if(a>0) { auto int var_otomatis; CODE } }
contoh hasil yang akan diperoleh dari program di atas adalah:
masukkan nilai pangkat:3
5^3=125
2)variabel statis:
penjelasan:Variabel statis adalah suatu variable yang menyimpan nilai permanen dalam memori, artinya variable tersebut akan menyimpan nilai terakhir yang diberikan. Untuk menyatakan bahwa suatu variable adalah variable statis adalah dengan menggunakan kata kunci static.
syntax:
static tipe_data nama_variabel
contoh:
#include int KaliSepuluh(void) { static int a=1; a=a*10; return a; } int main(void) { int x,y,z; x=KaliSepuluh(); y=KaliSepuluh(); z=KaliSepuluh(); printf(“Nilai x=%d\n”,x); printf(“Nilai y=%d\n”,y); printf(“Nilai z=%d\n”,z); }
contoh hasil yang akan diperoleh adalah:
nilai x =10
nilai y=100
nilai z= 1000
3) variabel eksternal:
penjelasan:bahasa c mengizinkan kita untuk menuliskan syntax program ke dalam file yang terpisah dengan tujuan untuk modularisasi program. untuk itu apabila kita ingin mendeklarasikan variabel yang dapat dikenali dan diakses oleh masing-masing file yang terpisah tersebut, maka variable itu harus kita deklarasikan sebagai variable eksternal . adapun caranya adalah dengan menambahkan kata kunci ekstern pada saat pendeklarasian.
syntax:
extern tipe_data nama_variabel
contoh:
dalam file utama.c.
#include int var_eksternal; int main(void) { var_eksternal=100; printf(“Nilai var_eksternal:%d\n”,var_eksternal); SetNilai(); printf(“Nilai var_eksternal:%d\n”,var_eksternal); }
dalam file eksternal.c.
extern int var_ eksternal; void SetNilai(void) { var_eksternal=500; }
apabila dikompilasi dan dijalankan maka program di atas akan memberikan hasil sebagai berikut:
nilai var_eksternal:100
nilai var_eksternal:500
4) variabel register:
penjelasan:berbeda dengan variable biasa yang akan bertempat di memori, variable register ini akan disimpan di dalam register cpu. dengan demikian, apabila kita ingin mengisikan atau mengubah nilai variable register, maka kita tidak perlu melakukan akses terhadap memori sehingga proses yang dilakukan pun lebih cepat.perlu diperhatikan bahwa variable register ini hanya dapat diterapkan ke tipe bilangan bulat, karakter, dan pointer saja. selain itu variable ini hanya boleh dideklarasika sebagai variable lokal ataupun parameter dari fungsi. untuk mendeklarasikannya kita harus menggunakan kata kunci register.
syntax:
register tipe_data nama_variabel;
contoh:
#include int Pangkat(register int B, register int e) { hasil=1; for(;e;e--) { hasil *= B; } return hasil; } int main(void) { printf(“2^6=%d”,Pangkat(2,6)); }
hasil yang akan diperoleh dari program di atas adalah:
2^6=64
selain itu ada juga yg disebut variabel volatile yaitu variabel yang nilainya dapat berubah dikarenakan faktor eksternal. deklarasi variabel volatile yaitu, volatile tipe_data nama_variabel
Tidak ada komentar:
Posting Komentar