var
F: Pointer; //(全局变量)
implementation
procedure TForm1.Button1Click(Sender: TObject);
var
Pc: Pchar;
S: string;
begin
S := 'A Test';
Pc := Pointer(S);
F := Pointer(PC);
end;procedure TForm1.Button2Click(Sender: TObject);
begin
Edit2.Text := PChar(F); //可以显示出S的值('A Test')
end;
不是说函数(过程)中的变量一离开函数(过程)范围,
变量内存就会被回收吗?怎么此时还会在内存中存在呢?
F: Pointer; //(全局变量)
implementation
procedure TForm1.Button1Click(Sender: TObject);
var
Pc: Pchar;
S: string;
begin
S := 'A Test';
Pc := Pointer(S);
F := Pointer(PC);
end;procedure TForm1.Button2Click(Sender: TObject);
begin
Edit2.Text := PChar(F); //可以显示出S的值('A Test')
end;
不是说函数(过程)中的变量一离开函数(过程)范围,
变量内存就会被回收吗?怎么此时还会在内存中存在呢?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货