PERTEMUAN SDATA 04
POINTER DAN LINK LIST
Pendeklarasian variabel pointer menggunakan tanda * sebelum nama variabelnya, sedangkan untuk menampilkan nilai yang ditunjuk oleh suatu variabel pointer, juga digunakan operator * (tanda asterisk). Jika diinginkan untuk menampilkan alamat tempat penyimpanan nilai yang ditunjuk oleh suatu variabel pointer, digunakan operator & (tanda ampersand).
Pada suatu tipe data array, variabel pointer hanya perlu menunjuk pada nama variabel arraynya saja tanpa perlu menggunakan tanda ampersand, atau menunjuk pada nama variabel array pada indeks yang ke nol nya.
Definisi Variabel Pointer
Pointer yang menunjuk objek bertipe int
- int *A;
Pointer yang menunjuk objek bertipe char
- char *B;
Pointer yang menunjuk objek yang tipenya didefinisikn sendiri
- Mahasiswa *Ahmad;
Contoh pointer yang tidak diberi nilai awal
int *iPtr; // iPtr pointer menunjuk objek bertipe int
char *s; // s pointer menunjuk objek bertipe char
Rational *rPtr; // rPtr pointer menunjuk objek Rational
Contoh pointer yang diberi nilai awal
int i = 1;
char c = 'y';
int *ptr; // ptr pointer menunjuk objek bertipe int
ptr = &i; // ptr pointer menunjuk ke alamat i
char *t; // t pointer menunjuk objek bertipe char
t = &c; // t pointer menunjuk ke alamat c
Link List
Linked list tidak lain adalah suatu struktur data yg merupakan suatu rangkaian atau daftar record berjenis sama. Kemudian dihubungkan melalui bantuan pointer. Pengalokasian daftar dapat dilakukan secara dinamis sehingga isi dari daftar dapat dimanipulasi. Untuk memahami linked list, terlebih dahulu anda harus tahu konsep pointer dan pengalokasian memori.
Aplikasi link list
class Node {
public:
int data;
Node *berikut;
};
//perintah
Node *A = new Node;
A->data = 1;
A->berikut = 0;
Node *B = new Node;
B->data = 2;
B->berikut = 0;
A->berikut = B;
Komentar
Posting Komentar