Variabel dan memori
suatu fungsi dan tidak dikenal pada fungsi lain. Namun
ada juga variabel yang dapat diakses oleh semua fungsi.
Jenis variabel berdasarkan kelas penyimpanannya, yang
berkaitan dengan lingkup variabel, yaitu:
o
Variabel otomatis
o
Variabel eksternal
o
Variabel Statis
o
Variabel otomatis
Variabel
yang didefinisikan di dalam suatu fungsi berlaku sebagai variabel lokal bagi
fungsi. Artinya, variabel tersebut hanya dikenal di dalam fungsi tempat
variabel didifinisikan.
Suatu
variabel otomatis mempunyai sifat :
ü Variabel hanya
akan diciptakan pada saat fungsi dipanggil.
ü Pada saat fungsi berakhir (selesai dieksekusi), variabel
otomatis menjadi sirna.
ü Tidak ada inisialisasi secara otomatis (pada saat
variabel diciptakan). Inisialisasi oleh pemrograman akan dikerjakan setiap kali
fungsi dipanggil.
ü Hanya dapat diakses di dalam fungsi yang mendifinisikan.
Selang waktu antara penciptaan variabel
hingga penyirnaannya sering disebut
sebagai lifetime atau durasi. Durasi dari variabel otomatis hanya pada saat
fungsi yang mendifinisikannya dieksekusi.
o
Variabel eksternal
Variabel eksternal merupakan kebalikan dari vaiabel
otomatis. Variabel eksternal adalah variabel yang didifinisikan diluar fungsi
manapun. Variabel ini dikenal juga sebagai variabel
global, sebab variabel ini dikenal disemua fungsi. Anda dapat
mendeklarasikan bukan mendifinisikan, karena tidak ada pengalokasian memori.
Sehingga sifat dari variabel eksternal kebalikan dari
variabel otomatis.
Penggunaan variabel eksternal diusahakan sesedikit
mungkin atau sedapat mungkin tidak usah digunakan. Tidak lain adalah karena
variabel ini mudah sekali berubah oleh pernyataan penugasaan yang letaknya bisa
dimana saja. Ini bisa menimbulkan efek samping yang sulit untuk melacaknya,
terutama untuk program yang besar.
Variabel eksternal mempunyai durasi selama program
diekskusi. Dengan kata lain, memori yang digunakan untuk variabel ini tetap
dipertahankanselama program belum berakhir.
o
Variabel statis
Baik variabel eksternal maupun otomatis dapat
berkedudukan sebagai variabel statis. Suatu variabel statis mempunyai sifat :
Jika variabel local berdiri sebagai variabel statis, maka
:
Ø Variabel tetap hanya dapat diakses pada fungsi yang
mendifinisikannya
Ø Variabel tidak hilang saat dieksekusi fungsi berakhir
nilainya akan tetap dipertahankan, sehingga akan dikenali pada pemanggilan
fungsi untuk tahap berikutnya.
Ø Inisialisasi oleh pemrograman akan dilakukan sekali saja
selama program dijalankan, jika tidak ada inisialisasi secara eksplisit,
variabel diisi dengan nol.
Jika Variabel eksternal dijadikan sebagai variabel
statis, variabel ini dapat diakses oleh semua file yang didifinisikan pada file
yang sama dengan variabel eksternal tersebut (hal ini bermanfaat pada
pemrograman file berganda atau kode program ditaruh pada beberapa file).
MEMORI DINAMIS
Konsep pengalokasian memori
Tataletak
memori pada computer setelah suatu program dimuat kememori computer. Seperti
gambar berikut :
Stack
Heap
Data
Kode
Pada saat program yang dibuat dijalankan, terdapat
sejumlah memori yang tidak terpakai. Memori ini dikenal sebagai Heap. Memori
inilah yang dapat dipakai untuk memciptakan variabel dinamis. Ukuran
memori ini sangatlah bervariasi, bergantung pada model memori yang digunakan
compiler dan juga system operasi.
Subscribe to:
Post Comments
(
Atom
)
No comments :
Post a Comment