Page 166 - Project Akhir Media Pendidikan
P. 166
B P a
… … …
Gambar 7.6. Pointer ke pointer
Kejadian seperti ini sering dinamakan dengan istilah multiple indirection. Adapun cara
untuk mendeklarasikan sebuah pointer ke pointer adalah dengan menambahkan tanda
asterisk (*) sebanyak dua kali di depan nama pointer yang akan dideklarasikan. Berikut
ini bentuk umumnya.
tipe_data **nama_pointer;
Untuk lebih memperjelas pembahasan mengenai materi ini, di sini kita akan membuat
program yang didalamnya terdapat pendeklarasian sebuah pointer ke pointer yang
sedang menunjuk ke alamat dari variabel lain. Adapun contoh sintaknya adalah sebagai
berikut.
#include <stdio.h>
int main() {
/* Mendeklarasikan variabel a bertipe char dan pointer P yang
akan menunjuk ke tipe char */
char a, *P;
/* Mendeklarasikan pointer B untuk menunjuk ke alamat dari ke
pointer P */
char **B;
a = ‘A’;
P = &a;
B = &P;
/* Menampilkan nilai yang dikandung di dalam variabel a,
pointer P dan B */
printf(“Nilai a \t\t = %c\n”, a);
printf(“Alamat a \t\t = %p\n\n”, &a);
printf(“Alamat yang ditunjuk P \t = %p\n”, P);
printf(“Alamat P \t\t = %p\n”, &P);
printf(“Nilai *P \t\t = %c\n\n”, *P);
printf(“Alamat yang ditunjuk B \t = %p\n”, B);
printf(“Alamat B \t\t = %p\n”, &B);
printf(“Nilai *B \t\t = %p\n”, *B);
162