Header Ads

Defenisi Pengertian Tentang Pointer | Permograman

Pointer ke Variabel
Pointer sering disebut juga dengan istilah link, referensi, penunjuk adalah suatu variable yang menyimpan atau menunjuk alamat dari suatu variabel yang lain. Pointer menunjuk suatu data yang tersimpan dalam sebuah variabel dengan cara menyimpan alamat dari variabel penyimpan data tersebut. Pointer dalam kehidupan sehari – hari dianalogikan seperti kartu alamat sesorang (KTP, atau yg lain) maka kartu tersebut dapat menunjukkan dimana orang tersebut berada, bagaimana caranya? ya tentu saja dengan menyimpan alamat tersebut pada kartu.
Pendeklarasian variabel Pointer tidak jauh berbeda dengan pendeklarasian variabel biasa, hanya perlu ditambahkan simbol topi ( ^ ), biasa juga disebut ceret, topi atau circumflex. Simbol topi tersebut menandakan bahwa variabel tersebut menunjuk ke lokasi tertentu di memori.
Pointer merupakan suatu tipe data dalam Pascal yang berfungsi untuk  menunjuk dan menyimpan alamat memori. Dalam penulisan pointer biasa digambar  dengan panah, sedangkan bagian memori yang ditunjuk digambar dengan kotak, dan isinya ditulis di dalam kotak. Bentuk umum dari deklarasi tipe pointer :
Untuk pointer bertipe : <nama_var> : ^<tipe_data>;
Untuk pointer tidak bertipe: <nama_var> : pointer;
Suatu pointer dapat menunjuk ke data bertipe elementer, terstruktur, pointer yang lain, atau tidak bertipe. Jika suatu pointer tidak menunjuk ke mana-mana, pointer itu dinamakan dangling, sedangkan bagian memori yang tidak dapat diakses karena tidak ada pointer yang menunjuk dinamakan garbage (sampah).
Pointer ke Array
Antara Array dan Pointer memeliki beberapa perbedaan. Menurut sifatnya, variable bertipe array bersifat statis yang dimana ukuran dan urutannya sudah pasti atau sudah ditentukan sebelumnya sehingga tidak dapat ditambah lagi. Selain itu memori yang dipakai tidak dapat dihapus bila variable bertipe array tersebut sudah tidak digunakan lagi pada saat program dijalankan. Sedangkan variable bertipa pointer  adalah tipe data yang bersifat dinamis, yaitu variable hanya dialokasikan pada saat dibutuhkan, dan jika tidak dibutuhkan lagi dapat dialokasikan kembali. Perbandiangan antara tipe data Array dan tipe data Pointer:


Pemanfaatan Pointer

Pointer merupakan variabel khusus yang berisi suatu address (alamat) di lokasi lain didalam memory. Suatu variabel yang points(menunjuk) ke sesuatu sehingga disebut pointer.
Ada dua macam pointer:
1. typed(tertentu): merupakan pointer yang menunjuk pada tipe data tertentu pada variable.
2. generic(umum): merupakan pointer yang tidak menunjuk pada tipe data tertentu pada variable.
Contoh deklarasi pointer: var p : ^integer;
Contoh di atas merupakan deklarasi variabel p sebagai pointer dari integer. Dengan menambahkan tanda caret (^) di depan nama tipe data variabel yang dideklarasikan :
program contoh_pointer1;
uses wincrt;
var p : ^integer;
m, n : integer;
begin
m:=10;
n:=15;
p:=@m; { p sekarang menunjuk ke m }
p^:=12; { hal ini sama dengan m:=12; }
p:=@n; { p sekarang menunjuk ke n }
p^=m; { { hal ini sama dengan n:=m; }
writeln(‘m = ‘,m,’, n = ‘,n); { m = 12, n = 12 }
end.
Ketika p menunjuk ke m ( p:=@m;), mengakses p^ sama dengan mengakses m.
baca juga gimana pemograman dasar tentang array
Diberdayakan oleh Blogger.