Laman

Minggu, 01 April 2012

Array dan Pointer

Konsep Dasar Pointer
Variable pointer sering dikatakan sebagai variable yang menunjuk ke obyek lain.Pada kenyataan yang sebenarnya , variable pointer berisi alamat dari suatu obyek lain (yaitu obyek yang dikatakan ditunjuk oleh pointer).Sebagai contohnya px adalah variable pointer dan x adalah variable yang ditunjuk oleh px, kalau x berada pada alamat memori(alamt awal)1000, maka px akan berisi 1000, seperti di ilustrasikan dalm gambar berikut
Gambar Variable px menuju ke variable x











Mendeklarasikan variable pointer
Sebuah variable pointer dideklarasikan  dengan bentuk sebagai berikut
Dengan tipe data sembarang tipe, adapun nama variable adalah nama dari variable pointer sebagai berikut
gambar diatas menyatakan bahwa  px adalah variable pointer yang menunjuk pada suatu data bertipe int pada contoh 1, sedangkan pada contoh 2 adalah pch1 dan pch2 adalah variable pointer yang menunjuk ke data bertipe char.
Gambar Ilustrasi pendeklarasian variable
Pointer dan Array
Hubungan antara pointer dan array dalam bahasa C sangatlah erat.Sebab sesungguhnya array secara internal alan diterjemahkan dalam bemtuk pointer.Pembahasan berikut akan memberikan gambaran hubungan antara pointer dengan array.Misalkan dideklarasikan dalam sebuah fungsi




Kemudian diberikan instruksi





maka ptgl akan berisi alamat dari element array tgl_lahir yang berindeks nol, instruksi diatas dapat juga ditulis sebagai berikut
sebab nama array tanpa tanda kurung menyatakan alamat awal dari array.Sesudah penugasan seperti diatas 




dengan sendirinya menyatakan element pertama(berindeks sama dengan nol) dari array tgl_lahir .Hal ini bisa dilihat pada potongan program berikut ini









dan hasil eksekusinya adalah sebagia berikut




Array dari Pointer
Suatu array bisa digunakan untuk menyimpan sejumlah pointer, sebagai contoh


Merupakan pernyataan untuk mendeklarasikan array pointer.Array namahari terdiri dari 10 elemen berupa pointer yang menunjuk ke data bertipe char
Gambar Array pointer









Array pointer bisa juga diinisialisasikan pada saat pendeklarasian variable.Sebagai contoh seperti pada gambar di bawah ini











Pada contoh ini
namahari[0] berisi alamat yang menunjuk pada string "senin"
namahari[1] berisi alamat yang menunjuk pada string "selasa"
namahari[2]  berisi alamat yang menunjuk pada string "rabu"
dan seterunya.


Tidak ada komentar:

Posting Komentar