Delphi运营商^,这是什么意思?

时间:2014-09-26 12:10:23

标签: delphi operators

我在互联网上找不到^运算符的含义。

在这个例子中,^意味着什么:

P = PChar(s);
While P^ <> #0 do
begin
//do something
end;

    例如,#0是表示字符串结尾的字符。但我无法在互联网上找到^。有人可以解释一下吗?

1 个答案:

答案 0 :(得分:6)

它是指针取消引用运算符。在您的示例代码中,P是指向字符的指针。所以P^取消引用该指针。换句话说,P^评估P指向的字符。

此处记录了操作员:Expressions | Pointer Operators

  

^运算符取消引用指针。它的操作数可以是除通用指针之外的任何类型的指针,在解除引用之前必须进行类型转换。

也许有一个更有用的文档主题在这里:Pointers and Pointer Types。后一个主题更详细地介绍了指针。您还可以阅读有关PChar特殊处理的String Types