1.符号 @和^。@用于取得一个变量的地址指针;^用于取得一个指针对应的数据,也可以用于声明指针类型。如:
type
pinteger = ^integer;{在类型名前面加上^可以声明其对应的指针类型}
var
i,j: integer;
pi: pinteger;
begin
i := 5;
pi := @i; {取得变量i的地址指针}
j := pi^; {从pi中取出值,此时i=j}
end;
有些语言能对指针作加、减等运算,但是Pascal中能进行这类运算的只有PChar类型。只须记住,在Pascal中一般不允许直接作加、减运算就可以了。
2.使用函数Addr可以代替@符号取得变量地址。如:
pi := addr(i);
判断一个指针是否有指向时,除了使用:
if pi <> nil then dosomething;
这样的形式外,还可以调用函数Assigned,它们是等价的:
if Assigned(pi) then dosomething;