下面是我看到一个例子,是一个数组(1901.1.1 --2050.12.31
),我不知道下面表示是什么意思?
gLunarMonthDay:array[0..149] of Word=($4ae0, $a570, $5268, $d260, $d950, $6aa8, $56a0, $9ad0, $4ae8, $4ae0, //1910
$a4d8, $a4d0, $d250, $d548, $b550, $56a0, $96d0, $95b0, $49b8, $49b0, //1920
$a4b0, $b258, $6a50, $6d40, $ada8, $2b60, $9570, $4978, $4970, $64b0, //1930
$d4a0, $ea50, $6d48, $5ad0, $2b60, $9370, $92e0, $c968, $c950, $d4a0, //1940
$da50, $b550, $56a0, $aad8, $25d0, $92d0, $c958, $a950, $b4a8, $6ca0, //1950
$b550, $55a8, $4da0, $a5b0, $52b8, $52b0, $a950, $e950, $6aa0, $ad50, //1960
$ab50, $4b60, $a570, $a570, $5260, $e930, $d950, $5aa8, $56a0, $96d0, //1970
$4ae8, $4ad0, $a4d0, $d268, $d250, $d528, $b540, $b6a0, $96d0, $95b0, //1980
$49b0, $a4b8, $a4b0, $b258, $6a50, $6d40, $ada0, $ab60, $9370, $4978, //1990
$4970, $64b0, $6a50, $ea50, $6b28, $5ac0, $ab60, $9368, $92e0, $c960, //2000
$d4a8, $d4a0, $da50, $5aa8, $56a0, $aad8, $25d0, $92d0, $c958, $a950, //2010
$b4a0, $b550, $b550, $55a8, $4ba0, $a5b0, $52b8, $52b0, $a930, $74a8, //2020
$6aa0, $ad50, $4da8, $4b60, $9570, $a4e0, $d260, $e930, $d530, $5aa0, //2030
$6b50, $96d0, $4ae8, $4ad0, $a4d0, $d258, $d250, $d520, $daa0, $b5a0, //2040
$56d0, $4ad8, $49b0, $a4b8, $a4b0, $aa50, $b528, $6d20, $ada0, $55b0); //2050

解决方案 »

  1.   

    //数组gLunarDay存入阴历1901年到2100年每年中的月天数信息, 
    //阴历每月只能是29或30天,一年用12(或13)个二进制位表示,对应位为1表30天,否则为29天 13个月是闰年,尾数为8是就是闰年
    例如1901年
    $4ae0= 0100100011100000b
    表示 1月29天 2月30天 3月29天.....
      

  2.   

    unit Unit1;
    interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls;type
      Dish = record
        Name :string;
        Price :Integer;
      end;type
      TForm1 = class(TForm)
        Button1: TButton;
        Memo1: TMemo;
        procedure Button1Click(Sender: TObject);
        procedure FormCreate(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;var
      Form1: TForm1;implementation{$R *.dfm}var Dishes:array[0..3] of Dish;
    procedure TForm1.Button1Click(Sender: TObject);
    var i: integer;
    begin
       memo1.Clear;
       for i:= low(dishes) to High(dishes) do
          Memo1.Lines.Add('Name:' + dishes[i].Name + ';'+ ' Price:' + Inttostr(dishes[i].Price));
    end;procedure TForm1.FormCreate(Sender: TObject);
    var i :integer;
    begin
       //初始化:
       for i:=0 to 3 do
       begin
           Dishes[i].Name:='yourname+inttostr(i)';
           Dishes[i].price:=20*I;
       end;
    end;end.