首页 > 代码库 > delphi pchar 指针错误
delphi pchar 指针错误
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | var P: Pchar; //P 是指针 CSize: Cardinal; begin CSize := MAX_COMPUTERNAME_LENGTH + 1; GetMem(P, CSIze);//在这里你给 P 分配了一块内存。 P := ‘4321‘; //这里你将 P 指向另一处含有常量 ‘4321‘ 的内存。此时先前给 P 分配的内存 //已经成了“孤岛”,就是通常所说的“内存泄漏”。 ShowMessage(P); FreeMem(P); //常量 ‘4321‘ 的内存是由系统自动管理的,不允许人工释放。 end;
//下面代码正常: var P: Pchar; //P 是指针 CSize: Cardinal; begin CSize := MAX_COMPUTERNAME_LENGTH + 1; GetMem(P, CSIze);//在这里你给 P 分配了一块内存。 strcopy(P,‘4321‘); //将常量 ‘4321‘ 复制到先前给 P 分配的内存里。 ShowMessage(P); FreeMem(P); //释放给 P 分配的内存。 end; |
delphi pchar 指针错误
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。