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

use*_*470 2 delphi operators

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

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

P = PChar(s);
While P^ <> #0 do
begin
//do something
end;
Run Code Online (Sandbox Code Playgroud)

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

Dav*_*nan 6

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

这里记录了操作符:表达式| 指针运算符.

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

也许更适合您的文档主题是:指针和指针类型.后一个主题更详细地介绍了指针.您还可以阅读包含特殊处理的字符串类型PChar.