用户名:  密码:   
您当前的位置:首页 > 程序设计 >  Delphi > 

Delphi7中的指针

上次修改时间: 2024-02-27 12:07:04      来源:网络总结      作者:钢铁长陈
上一页      路径:DSD\Learn\Delphi语言\Delphi语法函数软件使用相关\      下一页

delphi7中的指针

@地址,^前定指针后获数据
@放变量前,表获取该变量的地址,可把地址赋给同样变量类型的指针
^放数据类型前,表定义了该类型的一个指针变量
^放后面,表获取该指针指向地址空间的内容

ph: PansiChar; //定义ansichar类型的指针
示例:
type
Pint=^integer; //定义一个整形指针
var
pt:pint; //定义一个整形指针
p:pointer; //定义一个无类型指针,可以指向任何变量
a,b:integer;
begin
a:=2;
b:=3;
pt:=@b;  //获取b变量的地址给整形指针,因为b本身是整形,指针pt也是整形
memo1.Lines.Add(IntToStr(Integer(pt)));  //输出指针pt的地址

p:=@a;  //把a的地址给p,p为无类型指针,可指向任何数据,@为获取变量地址
b:=p^  //这里错误,b有类型,而p为无类型的指针不能赋值,

b:=Integer(p^);  //将无类型的指针转为整形才能赋给整形变量
Memo1.Lines.Add(IntToStr(b));

pt:=p;  //指针间赋值不需类型相同,
Memo1.Lines.Add(IntToStr(pt^));
end