动态数组的应用

unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    ListBox1: TListBox;
    bt: TButton;
    Button2: TButton;
    procedure btClick(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.btClick(Sender: TObject);
var
  a: array of array of string;                                       //动态数字类型的定义
  i,j: integer;                                                      //数组下标
  tempstr: string;                                                   //临时变量
begin
  setlength(a,10);                                                   //设置10个第一维数组
  for i := low(a) to high(a) do
    begin
      setlength(a[i],i);                                             //设置10个第二维数组
      for j := low(a[i]) to high(a[i]) do
        begin
          a[i,j] := inttostr(j+1) + ' ';
          if i > 0 then tempstr := tempstr + a[i,j];
        end;
      if i > 0 then
        begin
          listbox1.Items.Add(tempstr);
          tempstr := '';
        end;
    end;
end;

procedure TForm1.Button2Click(Sender: TObject);                      //清除
begin
  listbox1.Clear;
end;

end.

 

posted @ 2011-12-08 09:49  endsnow  阅读(174)  评论(0)    收藏  举报