Pointer 02

1.2 Operasi Aritmatika Pada Pointer

Operasi aritmatika yang umum dilakukan pada suatu variabel pointer hanya berupa operasi pertambahan dan pengurangan. Suatu variabel pointer hanya dapat ditambah atau dikurangi dengan suatu nilai integer.
Operasi pertambahan pointer dengan suatu nilai integer merupakan suatu peningkatan nilai pointer yang menunjukkan alamat lokasi memori yang menyimpan nilai data berikutnya. Alamat lokasi memori dinyatakan dalam bilangan heksadesimal.
Misalnya sebuah variabel pointer X menunjuk pada alamat memori 182F:00FA, maka operasi pertambahan X+1 menunjuk pada alamat: 182F:00FA + sizeof(tipe_data_x)
Fungsi sizeof() berfungsi untuk mengembalikan nilai ukuran (dalam byte) terhadap tipe data yang digunakan oleh variabel pointer tersebut.
Jika X merupakan variabel pointer bertipe integer (dimana sizeof(int) = 2 byte), maka operasi X+1 akan menunjukkan alamat:

182F:00FA
2
------------- +
182F:00FC

Jika X merupakan variabel pointer bertipe float (dimana sizeof(float) = 4 byte), maka operasi X+1 akan menunjukkan alamat:

182F:00FA
4
------------- +
182F:00FE

Misalnya, X dideklarasikan sebagai variabel pointer bertipe int, maka hubungan operasi X+1, X+2, X+3 dan seterusnya dengan alamat lokasi memori dapat dilihat pada ilustrasi berikut ini:


Contoh 3:

#include

#include

#include

#include

void main()

{

int *X;

X = (int *) malloc(sizeof(int));

if (X == NULL)

{

cout<<"Memori Tidak Cukup!!!";

}

else

{

cout<<"Variabel X+0 menunjuk pada alamat = ";

printf("%p",X);cout<

cout<<"Variabel X+1 menunjuk pada alamat = ";

printf("%p",X+1);cout<

cout<<"Variabel X+2 menunjuk pada alamat = ";

printf("%p",X+2);cout<

cout<<"Variabel X+3 menunjuk pada alamat = ";

printf("%p",X+3);cout<

cout<<"Variabel X+4 menunjuk pada alamat = ";

printf("%p",X+4);cout<

}

}

Jika program di atas dijalankan, didapatkan hasil:



0 Komentar "Pointer 02", Baca atau Masukkan Komentar

Followers