我知道这可能很简单,但有时Unicode问题会让我很困扰,需要考虑太多细节。
我有以下代码:
pcBuffer := StrAlloc(Stream.Size + 1) where pcBuffer is defined as PWideChar
组件现在需要
pcBuffer作为PAnsiChar
,所以如果我这样做,我会得到以下错误:
StrAlloc- Incompatible Types PAnsiChar and PWideChar
因为StrAlloc返回的是PWideChar。
我该怎么解决?
我可以直接将其强制转换为PAnsiChar或以Unicode方式分配
它,或者通过GetMem进行分配吗?