unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) procedure FormCreate(Sender: TObject); end;var Form1: TForm1;implementation{$R *.dfm}var i1: Integer; {会被自动初始化为 0} p1: Pointer; {会被自动初始化为 0, 也就是空指针}const BoolStr: array[Boolean] of string = ('False','True');procedure TForm1.FormCreate(Sender: TObject);var i2: Integer; {会被初始化为一个随机值} p2: Pointer; {会被初始化为一个随机地址} b: Boolean;begin ShowMessage(IntToStr(i1)); {0} ShowMessage(IntToStr(i2)); {14909552} ShowMessage(IntToStr(Integer(p1))); {0} ShowMessage(IntToStr(Integer(p2))); {4570636} {判断 p1、p2 两个指针是否是已赋值} b := Assigned(p1); ShowMessage(BoolStr[b]); {False} b := Assigned(p2); ShowMessage(BoolStr[b]); {True} {释放指针后再判断} p1 := nil; p2 := nil; b := Assigned(p1); ShowMessage(BoolStr[b]); {False} b := Assigned(p2); ShowMessage(BoolStr[b]); {False}end;end.
联系客服