1 program ukazatel;
2
3 var Pcislo:^integer; {Pcislo je ukazatel na proměnnou typu integer}
4 Pkolik:^integer;
5
6 tolik:integer;
7
8 begin
9 tolik:=10; {klasická staticky definovaná prměnná}
10 writeln(tolik);
11
12 new(Pcislo); {Alokuje se pamněť pro proměnnou typu integer na kterou ukazuje Pcislo}
13
14 Pcislo^:=20; {20 se uloží do paměti na místo, na které ukazuje Pcislo}
15 writeln(Pcislo^); {vytiskne se obsah paměti, na kterou ukazuje Pcislo}
16
17 tolik:=Pcislo^; {do proměnné kolik se uloží obsah paměti na kterou ukazuje Pcislo}
18 writeln(tolik);
19
20 Pkolik:=Pcislo; {Pkolik ukazuje na stejné místo v paměti jako Pcislo}
21 Pcislo:=@tolik; {Pcislo nyní ukazuje na staticku proměnnou tolik}
22 tolik:=1000;
23 writeln(Pcislo^);
24 writeln(tolik);
25
26 tolik:=8192;
27 Pkolik:=nil; {Pkolik nyní ukazuje "nikam"}
28 dispose(Pkolik);
29 dispose(Pcislo); {Pkolik a Pcislo je uvolněno z paměti}
30
31 writeln(tolik); {Obsah proměnné tolik se nevypíše, protože na ni ukazoval Pcislo a ten už je uvolněn z paměti :-}
32 end.
33