pascal基本问题,关于指针的
各位,pascal中能不能读出指针中的地址值呢?
即
P: Pointer;
p^是指针的内容
那指针现在指向的地址怎么取得。
问题点数:50、回复次数:6Top
1 楼jinjazz(近身剪)回复于 2004-08-04 15:59:11 得分 0
addr(p);
@pTop
2 楼jinjazz(近身剪)回复于 2004-08-04 16:01:44 得分 20
理解错误
integer();Top
3 楼linzhengqun(风。我回来了)回复于 2004-08-04 16:27:36 得分 20
P: Pointer;
p^是指针的内容
这个不能,Pointer要用^,必须强制转化为具体的类型才可用
var p:Pointer;
x:integer;
begin
X:=90;
P:=@X;
Edit1.Text:=InttoStr(pInteger(P)^);
end;
要读出指针的地址,强制转化为相应的类型即可
var p:Pointer;
x:integer;
begin
X:=90;
P:=@X;
Edit1.Text:=InttoStr(Integer(P));
end;Top
4 楼BorIand(Borland中国&Delphi)回复于 2004-08-04 16:30:53 得分 10
符号 ^ 有两种用途,当它出现在类型标识符之前,如
^typeName
表示一个类型,该类型表示指向typeName类型变量的指针。当它出现在指针变量之后,如
pointer^
该符号对指针解除参照,也就是说,返回存储在内存地址(该地址保存在指针中)的值
Top
5 楼fj218(双元)回复于 2004-08-04 19:19:28 得分 0
integer(P)Top
6 楼capoatguitar(菠萝蜜汁红塔山)回复于 2004-08-04 19:26:14 得分 0
Integer(P)
Top




