delphi Record指针测试  
官方Delphi 学习QQ群: 682628230(三千人)
频道

delphi Record指针测试


源代码:
--------------------------------------------------

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  pshare=^Tshare;
  Tshare=record
    data:array[0..255] of char;
    count:integer;
  end;


  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Memo1: TMemo;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    constructor Create(AOwner: TComponent); override;
    destructor Destroy; override;

    { Public declarations }
  end;

var
  Form1: TForm1;
  shareData:pshare;

implementation

{$R *.dfm}
{$APPTYPE CONSOLE}

procedure TForm1.Button1Click(Sender: TObject);
begin
  shareData^.data[shareData^.count]:=chr(random(26)+65);
  inc(shareData^.count);
end;

constructor TForm1.Create(AOwner: TComponent);
var
  c:char;
begin
  inherited;
  //FillChar(shareData,255,65);
  new(sharedata);
  shareData^.count:=0;
  fillchar(shareData^.data,sizeof(shareData^.data),65);
  //RaiseLastWin32Error;
  //writeln(sharedata^.data[0]);


end;

destructor TForm1.Destroy;
begin
  Dispose(shareData);
  inherited;
end;

procedure TForm1.Button2Click(Sender: TObject);
var
  i:integer;
begin
  memo1.Clear;
  for i:=0 to sharedata^.count-1 do
  begin
    memo1.Text:=memo1.Text+sharedata^.data[i];
  end;
end;

end.


推荐分享
图文皆来源于网络,内容仅做公益性分享,版权归原作者所有,如有侵权请告知删除!
 

Copyright © 2014 DelphiW.com 开发 源码 文档 技巧 All Rights Reserved
晋ICP备14006235号-8 晋公网安备 14108102000087号

执行时间: 0.034343004226685 seconds