List berdasarkan pointer dipakai untuk menunjukkan variabel dinamis yang bertipe record, dimana record ini mempunyai komponen (field) yang bertipe pointer.
Deklarasi Linked List :
==========================================
type
PtrData = ^RecordData;
RecordData = RECORD
Item : char;
Berikut : PtrData;
end;
Var
Pd : PtrData;
==========================================
Untuk lebih jelasnya lagi, silahkan coba program berikut ini dan coba dipahami !
==========================================
program linked_list;
uses crt;
type ptr = ^tipe;
tipe = record
next : pointer;
nilai : integer;
end;
var list : ptr;
procedure masuk(var l : ptr; x : integer);
var baru : ptr;
begin
new(baru);
baru^.nilai:=x;
baru^.next:= nil;
if l= nil then l:=baru
else
begin
baru^.next := l;
l:= baru;
end;
end;
procedure cetak (l:ptr);
var bantu : ptr;
begin
bantu:= l;
while bantu <> nil do
begin
write(bantu^.nilai:3);
bantu:=bantu^.next;
end;
end;
var bil, bil2 : integer;
jb : char;
begin
clrscr;
new(list);
list:=nil;
jb:='Y';
writeln;
while upcase(jb)='Y' do
begin
writeln;
write ('Masukkan bilangan : '); readln(bil);
masuk(list,bil);
write ('ingin lagi ? [Y/T] : '); readln(Jb);
end;
writeln;
cetak(list);
writeln;
readln;
end.
==========================================