Dokumen tersebut membahas tentang hubungan antara pointer dan array. Pointer dapat menunjuk ke array karena secara internal array juga menyatakan alamat memori. Elemen array dapat diakses menggunakan notasi indeks [] maupun menggunakan pointer dengan operator * dan increment.
2. Pointer dan Array
ï‚— Pointer dan array memiliki hubungan yang dekat. Secara internal array
juga menyatakan alamat. Misalnya, didefinisikan :
ï‚— Agar ptgl menunjuk ke array, diperlukan pernyataan berupa :
ï‚— Perhatikan tidak ada tanda & di depan tgl_lahir. Ini disebabkan nama
array sebenarnya sudah menyatakan alamat. Oleh karena itu tanda &
tidak diperlukan.
int tgl_lahir[] = {24, 6, 1965};
int *ptgl;
ptgl = tgl_lahir;
3. Pointer dan Array
ï‚— Pernyataan seperti :
ï‚— Dimana ptgl adalah pointer dan tgl_lahir adalah
array, identik dengan :
ptgl = tgl_lahir;
ptgl = &tgl_lahir[0];
4. #include <iostream.h>
#include <conio.h>
void main()
{
int tgl_lahir[] = {24, 6, 1965};
int *ptgl;
ptgl = tgl_lahir; //ptgl menunjuk ke array
cout<<"Nilai yang ditunjuk oleh ptgl : ";
cout<<*ptgl<<endl;
cout<<"Nilai dari tgl_lahir[0] : ";
cout<<tgl_lahir[0]<<endl;
getch();
}
5. Pointer dan Array
ï‚— Seluruh elemen array dapat ditampilkan dengan
pernyataan :
ï‚— Bentuk tgl_lahir[i] dapat diubah menjadi notasi pointer
seperti berikut :
ï‚— Contoh program :
for(int i=0; i<3; i++)
cout<<tgl_lahir[i]<<endl;
for(int i=0; i<3; i++)
cout<<*(ptgl + i)<<endl;
7. Pointer dan Array
ï‚— Perlu diketahui, pada notasi seperti :
ï‚— tgl_lahir + i tidak berarti :
ï‚— Tetapi dengan bijaksana dapat mengetahui bahwa
tgl_lahir + i berarti :
*(ptgl + i)
ptgl + (i byte)
ptgl + (ukuran tipe elemen ptgl)*i
9. Pointer dan Array
ï‚— Seluruh elemen array juga dapat diakses melalui
variabel pointer.
ï‚— Salah satu caranya yaitu dengan mengubah isi variabel
pointer sesuai dengan alamat masing-masing elemen
array.