考虑我的示例代码:

var p512Sector:PByte;
.....
getmem(p512Sector, 262144);
FillChar( p512Sector,262144 ,0);

当我运行程序时,Delphi 给了我一个违规访问错误。为什么?

最佳答案

使用 FillChar(p512Sector^, 262144, 0)(注意取消引用 ^)。否则,您将覆盖 指针 和内存中的内容,而不是分配的缓冲区。

关于delphi - 为什么在调用 FillChar 时会出现访问冲突?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4192474/

10-10 16:56