zoukankan      html  css  js  c++  java
  • 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;

  • 相关阅读:
    天心阁漫步
    大美湘江
    easyui tree基本操作
    盗墓笔记
    半年了
    文件上传控件值发生变化后自动提交表单
    宁静的夏夜
    今天您给别人让座,将来别人给您让座
    优先队列priority_queue 用法详解
    POJ2387
  • 原文地址:https://www.cnblogs.com/honeynm/p/4228834.html
Copyright © 2011-2022 走看看