Page 194 - Project Akhir Media Pendidikan
P. 194
2. NIM : DXX002 Nama : HERI Indeks : A
3. NIM : DXX003 Nama : PUJI Indeks : D
4. NIM : DXX004 Nama : RANDY Indeks : D
5. NIM : DXX005 Nama : ALEX Indeks : C
8.6. Struktur dan Pointer
Pointer merupakan fitur andalan yang terdapat di dalam bahasa C, kehadirannya dapat
ada di mana-mana. Kita dapat mendeklarasikan pointer sebagai anggota dari struktur
dan juga dapat mendeklarasikan pointer ke tipe struktur. Anda tidak perlu bingung akan
perbedaan antara keduanya karena topik ini akan kita bahas secara terpisah dalam sub
bab berikut.
8.6.1. Struktur yang Berisi Pointer
Kita dapat melengkapi fleksibilitas pointer dengan menempatkannya sebagai anggota
dari suatu struktur. Pendeklarasian pointer sebagai anggota struktur tidaklah berbeda
dengan pendeklarasian pointer yang telah diterangkan pada bab sebelumnya, yaitu
dengan menempatkan operator unary * di depan nama pointer yang ingin
dideklarasikan. Berikut ini merupakan contoh pendefinisian struktur yang di dalamnya
mengandung anggota yang bertipe pointer.
struct TITIK {
int *x; /* x adalah anggota yang merupakan pointer
ke tipe int */
int *y; /* y adalah anggota yang merupakan pointer
ke tipe int */
} T;
Sekarang apabila kita memiliki variabel a dan b yang keduanya bertipe int, maka kita
dapat memasukkan alamat memori dari variabel a dan b ke dalam pointer x dan y yang
terdapat pada struktur T, dengan cara seperti di bawah ini.
Tampak di atas bahwa T.x dan T.y berisi alamat (bukan nilai). Dengan demikian
berarti untuk mengambil nilai-nilai yang terdapat pada struktur T di atas kita akan
menuliskannya seperti berikut.
190