在Delphi中,@符号是取址运算符,用于获取变量、函数或过程的内存地址。
1、 获取变量地址
将变量的内存地址赋给指针变量,例如:
var
I: Integer;
P: ^Integer;
begin
I := 10;
P := @I; // 获取I的地址并赋给指针P
end;
此时P指向变量I的内存位置。
2、与指针类型配合使用
需预先声明指针类型(如^Integer),再通过@操作符获取地址。例如:
var
S: string;
PS: ^string;
begin
S := 'Demo';
PS := @S; // PS指向S的地址
ShowMessage(PS^); // 输出'Demo'
end;
3、与Addr的区别
@受编译选项{$T-}影响(若关闭则返回通用指针),而Addr始终返回目标类型的指针。
总结:@是Delphi中操作指针的基础工具,用于直接获取内存地址,需与指针声明(如^Type)结合使用。

被折叠的 条评论
为什么被折叠?



