社区
Windows SDK/API
帖子详情
PChar的用法
yao518
2006-12-15 04:49:38
在写这个问题这前我也看了关于PChar方面的资料,但都不是我想要的.我只想知道我下面的代码为什么会出错,请大家给一个解释就行了.
var
PStr: PChar;
begin
GetMem(PStr, 225);
PStr := PChar('abc');
FreeMem(PStr);
end;
就是这短短的三行代码,可是他出了错,运行不了.
...全文
529
8
打赏
收藏
PChar的用法
在写这个问题这前我也看了关于PChar方面的资料,但都不是我想要的.我只想知道我下面的代码为什么会出错,请大家给一个解释就行了. var PStr: PChar; begin GetMem(PStr, 225); PStr := PChar('abc'); FreeMem(PStr); end; 就是这短短的三行代码,可是他出了错,运行不了.
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
skertone
2006-12-21
打赏
举报
回复
用StrPCopy 为什么 呢?
因为PChar 是 #$0 (\0) 字符结尾的字串
StrPCopy会自动加上这个 #$0结尾标记
所以PChar要留的长度是 所需长度 + 1
JetDash
2006-12-21
打赏
举报
回复
你的本意是给pstr赋值吧,那应该是
strcopy(pstr,pchar('abc'));
zhao_yong
2006-12-19
打赏
举报
回复
如樓上說的做應該不會報錯了吧?
zhangl_cn
2006-12-19
打赏
举报
回复
GetMem(PStr, 225);
//PStr:= PChar('abc');
StrPCopy(Pstr,'abc');
FreeMem(PStr);
dyny
2006-12-16
打赏
举报
回复
GetMem(PStr, 225); //申请了内存,并由pstr指向这个内存
PStr:= PChar('abc'); //又把pstr批向了'abc'所在的内存空间
FreeMem(PStr); //在此处试图释放'abc'所在的内存空间,但这是不被允许的。
天涯倦客
2006-12-15
打赏
举报
回复
var
PStr: PChar;
begin
PStr := PChar('abc');
wudi_1982
2006-12-15
打赏
举报
回复
楼上的说了。
madyak
2006-12-15
打赏
举报
回复
用法有问题。
var
PStr: PChar;
begin
GetMem(PStr, 225);//申请了内存,并由pstr指向这个内存
PStr := PChar('abc');//又把pstr批向了'ABC'所在的内存空间
FreeMem(PStr);//在此处释放的空间并不是第一次申请的空间,
由于这句话PStr := PChar('abc'),已经把申请的空间给弄丢了,释放不了了。
end;
delphi中String,
PC
har
,PByte,Array of C
har
,Array of Byte 互相转换
delphi中String,
PC
har
,PByte,Array of C
har
,Array of Byte 之间的互相转换
typedef使用方法
主要讲解了typedef的概念,以及各种情况下使用的方法,希望对大家有所帮助
Typedef
用法
小结01
Typedef
用法
小结
Delphi中ShellExecute的妙用_ShellExecute的使用方法介绍_
Delphi中ShellExecute的使用方法介绍
关于typedef的
用法
总结
关于typedef的
用法
总结,和宏定义Define的一些区别
Windows SDK/API
1,183
社区成员
22,328
社区内容
发帖
与我相关
我的任务
Windows SDK/API
Delphi Windows SDK/API
复制链接
扫一扫
分享
社区描述
Delphi Windows SDK/API
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章