码迷,mamicode.com
首页 > Windows程序 > 详细

delphi pchar 指针错误

时间:2015-01-16 16:07:35      阅读:229      评论:0      收藏:0      [点我收藏+]

标签:

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 指针错误

标签:

原文地址:http://www.cnblogs.com/honeynm/p/4228834.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!