Recent in Technology

Variabel Fungsi Pemrograman C++

Suatu variabel selain dapat digolongkan berdasarkan jenis atau tipe data juga dapat diklasifikasikan berdasarkan kelas penyimpanan. Penggolongan berdasarkan kelas penyimpanan adalah :

  1. Variabel Lokal (Variabel Otomatis)

Variabel yang didefinisikan didalam suatu fungsi dan berlaku sebagai variabel lokal bagi fungsi

Variabel hanya dikenal di dalam fungsi dimana variabel itu didefinsikan dan tidak dikenal oleh fungsi lain

Sifat variabel otomatis:

· Hanya diciptakan saat fungsi dipanggil

· Saat fungsi berakhir, variabel otomatis akan dihapus

· Hanya dapat diakses didalam fungsi yang mendefinisikannya

Selang waktu antara penciptaan dan penghapusan variabel disebut sebagai lifetime atau waktu hidup.

Contoh penggunaan variabel otomatis / local:

#include

#include

void contoh();

void main()

{

clrscr();

int x = 10;

cout << "x pada main() : " << x << endl;

contoh();

getch();

}

void contoh()

{

int x = 15;

cout << "x pada contoh() : " << x;

}


1. Variabel Ekternal (Variabel Global)

· Variabel yang didefinisikan di luar fungsi manapun sehingga dikenal oleh semua fungsi

· Variabel eksternal mempunyai lifetime selama program dieksekusi

· Variabel eksternal sebaiknya digunakan sesedikit mungkin atau bahkan tidak digunakan sama sekali.

Contoh penggunaan variabel eksternal / global:

#include

#include

int x = 10;

void contoh();

void main()

{

clrscr();

contoh();

cout << x;

getch();

}

void contoh()

{

x++;

}


3. Variabel statis

Variabel statis memiliki beberapa sifat sebagai berikut:

· Variabel hanya dapat diakses pada fungsi yang mendefinisikannya

· Variabel tidak hilang setelah eksekusi berakhir. Nilainya akan tetap dipertahankan sehingga akan dikenali pada pemanggilan fungsi untuk tahap berikutnya

· Inisialisasi oleh pemrogram hanya dilakukan sekali saja selama program dijalankan. Jika tidak ada inisialisasi secara eksplisit, maka variabel diisi dengan nilai nol

Sintaks:

static tipe_data nama_variabel;


Contoh penggunaan variabel statis dan bukan statis.

#include

void contoh();

void main(){

contoh(); contoh(); contoh();

getch();}

void contoh(){

static int x = 10;

int y = 20;

x++; y++;

cout << "Harga x : " << x << " (variabel statis) " << endl;

cout << "Harga y : " << y << " (bukan variabel statis) " << endl;

cout << endl;}