Semua tulisan di sini adalah hasil uneg-uneg kala bete berat, jam kuliah kosong, dan ketika hotspot kampus bisa diajak kerja sama.
RSS

About Me

Foto Saya
LiliQue
Anak bungsu dari 4 bersaudara. Waktu kecil nakal setengah mati dan hobi banget berkelahi. Sekarang jadi mahasiswi teknik informatika Universitas Negeri Malang yang masih aja sering pulang karena kangen masakan ibu tercinta (yah gimana ga kangen masakan rumah kalo makanan anak kos ya begitu-begitu aja!). Punya rambut panjang sepunggung tapi sering dipanggil 'Mas', tinggi semampai (a.k.a semeter tak sampai). Selalu dapat peran jadi hantu kalo ada drama gara2 punya mata besar dan nakutin kalo melotot. Enggak terlalu berbakat berurusan sama anak kecil karena kalo ada anak kecil yg tadinya diam pasti cemberut begitu liat aku, yg tadiny ketawa ngakak malah nangis terisak..(ga tau knapa padahal akunya diem aja...ckck...ckck...).
Lihat profil lengkapku
Welcome to My Blog

Yang melirik Blog seadanya ini..

Pointer

Pointer (variabel penunjuk) adalah suatu variabel yang berisi alamat me¬mo¬ri dari suatu variabel lain. Alamat ini merupakan lokasi dari obyek lain (bia¬sanya variabel lain) di dalam memori. Contoh, jika sebuah variabel berisi alamat da¬ri variabel lain, variabel pertama dikatakan menunjuk ke variabel kedua. Ada 2 operator pointer yang dikenal secara luas, yaitu operator & dan operator *.
Operator &
Operator & merupakan operator alamat. Pada saat pendeklarasian variable, user tidak diharuskan menentukan lokasi sesungguhnya pada memory, hal ini akan dilakukan secara otomatis oleh kompiler dan operating sysem pada saat run-time. Jika ingin mengetahui dimana suatu variable akan disimpan, dapat dilakukan dengan memberikan tanda ampersand (&) didepan variable , yang berarti "address of". Contoh : ted = &andy;Penulisan tersebut berarti akan memberikan variable ted alamat dari variable andy. Karena variabel andy diberi awalan karakter ampersand (&), maka yang menjadi pokok disini adalah alamat dalam memory, bukan isi variable. Misalkan andy diletakkan pada alamat 1776 kemudian dituliskan instruksi sbb : andy = 25;
fred = andy;
ted = &andy;

Operator *
Operator * merupakan operator reference. Dengan menggunakan po¬inter, kita dapat mengakses nilai yang tersimpan secara langsung dengan mem¬berikan awalan operator asterisk (*) pada identifier pointer, yang ber¬arti "value pointed by". Contoh :
beth = *ted; (dapat dikatakan:"beth sama dengan nilai yang ditunjuk oleh ted")
beth = 25, karena ted dialamat 1776, dan nilai yang berada pada alamat 1776 adalah 25. Ekspresi dibawah ini semuanya benar, perhatikan :
andy = 25;
&andy = 1776;
ted = 1776;
*ted = 25;
Ekspresi pertama merupakan assignation bahwa andy = 25;. Ke¬dua, meng¬¬gunakan operator alamat (address/derefence operator (&)), se¬hing¬ga akan meng¬embalikan alamat dari variabel andy. Ketiga bernilai be¬nar karena as¬signation untuk ted adalah ted = &andy;. Keempat meng¬gu¬nakan reference ope¬ra¬tor (*) yang berarti nilai yang ada pada alamat yang di¬¬tunjuk oleh ted, yaitu 25. Maka ekspresi dibawah ini pun akan bernilai be¬nar :
*ted = andy;

Deklarasi Pointer
Seperti halnya variabel lain, variabel pointer juga harus dideklarasikan terlebih dahulu sebelum digunakan. Bentuk umum deklarasi pointer adalah :Dimana Tipe_data merupakan tipe dari data yang ditunjuk, bukan tipe dari pointer-nya. Contoh :
1. Mensubstitusikan address sebuah variabel ke pointer dengan memakai address operator & int x; int *ptr; ptr = &x;
2. Mensubstitusikan address awal sebuah array ke pointer char t[5]; char *ptr; ptr = t;
3. Mensubstitusikan address salah satu elemen array dengan address operator char t[5] ; char *ptr; ptr = &t[3];
4. Mensubstitusikan address awal character string ke pointer char char *ptr; ptr = ”jakarta”
5. Mensubstitusikan NULL pada pointer. NULL ada pointer kosong, menunjukkan suatu status dimana pointer itu belum diinisialisasikan dengan sebuah address tertentu.
6. Memakai fungsi MALLOC.

Selengkapnya mengenai pointer, klik di sini.

0 komentar:

Posting Komentar