首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PAnsiChar与PChar的区别

PAnsiChar与PChar的区别
EN

Stack Overflow用户
提问于 2009-11-26 20:33:06
回答 5查看 11.7K关注 0票数 7

PAnsiChar和PChar有区别吗?有什么类型?(在2007年以前的Delphi中)

谢谢你,提前!

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2009-11-26 20:37:41

在D2009和更高版本中:是的,有。PChar是指向Char的指针,它是unicode字符( WideChar)。而PAnsiChar是一个指向AnsiChar的指针,顾名思义,它是一个ANSI字符。

编辑:对于2009年前的Delphi版本,PCharPAnsiChar是完全相同的。它们都指向一个(Ansi)字符。

票数 19
EN

Stack Overflow用户

发布于 2009-11-27 03:21:01

我注意到你问题中的“在Delphi 2007以前的版本”,我的意思是“在Delphi 2007和更早的版本”,所以.

在Delphi2007和以前的中,PCharPANSIChar是同义词。它们的含义是一样的-指向ANSIChar值的指针。在这些版本中,CharANSIChar同义。

但是,在Delphi2009及更高版本中,Char成为WideChar的同义词,因此PChar成为PWideChar的同义词。

请注意,WideChar不是Unicode字符- Unicode不是那么简单。任何一个_WideChar_值可以是BMP (基本多语言平面)中的码点,或者它可以是代理对中的任一个。它也可以是一个变音符号-例如,要应用于WideString中紧靠前一个代码点的“重音”。

Unicode中的“字符”概念不容易映射到任何类型的单个值。

票数 4
EN

Stack Overflow用户

发布于 2009-11-26 20:36:57

PAnsiChar是指向非unicode char (旧字符串类型)的指针,而PChar指向新样式unicode char。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1803426

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档