请问:小弟我的这个小程序为什么不弹出小弟我要的字符串呢?多谢
请教:我的这个小程序为什么不弹出我要的字符串呢?谢谢!
请教:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
procedure my(ss:array of string ;i:integer);
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure my(ss:array of string ; i:integer);
var
str:array of string;
j:integer;
begin
setlength(str,i);
for j:=0 to i-1 do
begin
showmessage(str[i]);
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
ss:array of string;
begin
setlength(ss,3);
ss[0]:= '1232 ';
ss[1]:= 'sdd ';
ss[2]:= 'dsfddf ';
my(ss,3);
end;
end.
请教:
当我单击 Button1 ,为什么不弹出 '1232 ' 'sdd ' 'dsfddf ' 呢?
谢谢!
------解决方案--------------------
procedure my(ss: array of string; i: integer);
var
j : integer;
begin
for j:=0 to i-1 do
begin
showmessage(ss[j]);
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
ss:array of string;
begin
setlength(ss,3);
ss[0]:= '1232 ';
ss[1]:= 'sdd ';
ss[2]:= 'dsfddf ';
my(ss,3);
end;
哥们估计你形参实参并不是很清楚
------解决方案--------------------
array of string
不能直接:=
------解决方案--------------------
必须要把array of string声明成一种类型,例如说
type
TDynStrArry = array of string;
var
a, b: TDynStrArry;
这样a,b之间才能直接赋值。
------解决方案--------------------
补充一下,其实我的意思是想说,函数的形参和实参要声明成一种类型,这样才能传递。直接用array of string是不行的。
请教:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
procedure my(ss:array of string ;i:integer);
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure my(ss:array of string ; i:integer);
var
str:array of string;
j:integer;
begin
setlength(str,i);
for j:=0 to i-1 do
begin
showmessage(str[i]);
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
ss:array of string;
begin
setlength(ss,3);
ss[0]:= '1232 ';
ss[1]:= 'sdd ';
ss[2]:= 'dsfddf ';
my(ss,3);
end;
end.
请教:
当我单击 Button1 ,为什么不弹出 '1232 ' 'sdd ' 'dsfddf ' 呢?
谢谢!
------解决方案--------------------
procedure my(ss: array of string; i: integer);
var
j : integer;
begin
for j:=0 to i-1 do
begin
showmessage(ss[j]);
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
ss:array of string;
begin
setlength(ss,3);
ss[0]:= '1232 ';
ss[1]:= 'sdd ';
ss[2]:= 'dsfddf ';
my(ss,3);
end;
哥们估计你形参实参并不是很清楚
------解决方案--------------------
array of string
不能直接:=
------解决方案--------------------
必须要把array of string声明成一种类型,例如说
type
TDynStrArry = array of string;
var
a, b: TDynStrArry;
这样a,b之间才能直接赋值。
------解决方案--------------------
补充一下,其实我的意思是想说,函数的形参和实参要声明成一种类型,这样才能传递。直接用array of string是不行的。