这样使用指针为什么存取异常呢?

lyshw 2004-12-03 02:05:53
procedure Test(bStatus: PChar);
var
r: Byte;
begin
r := 128;
bStatus^ := Chr(r);
end;
应该如何改进呢?
...全文
60 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
lyshw 2004-12-04
  • 打赏
  • 举报
回复
byte当然可以保存128了 可以保存0-255
支持中文哦 2004-12-03
  • 打赏
  • 举报
回复
Byte可以保存下128吗?高位被截断了。0-127吧.
还有,传进函数的指针实现分配了内存吗?这个不是该函数的责任吧,应该是调用代码的责任.
lyshw 2004-12-03
  • 打赏
  • 举报
回复
我就是这样调的 不行啊
jinjazz 2004-12-03
  • 打赏
  • 举报
回复
var p:pchar;
begin
getmem(p,100);
Test(p);
shomessage(p);
freemem(p);
end;

16,749

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧