delphi数据类型的范围

代码
 1 unit Unit1;
 2 interface
 3 uses
 4   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 5   Dialogs, StdCtrls;
 6 type
 7   TForm1 = class(TForm)
 8     Button1: TButton;
 9     Button2: TButton;
10     procedure Button1Click(Sender: TObject);
11     procedure Button2Click(Sender: TObject);
12   private
13     { Private declarations }
14   public
15     { Public declarations }
16   end;
17 var
18   Form1: TForm1;
19 implementation
20 
21 {$R *.dfm}
22 procedure TForm1.Button1Click(Sender: TObject);
23 var
24   B: Byte;    //B是8位的
25   W: Word;    //W是16位的
26 begin
27   W := $1234;    //将16进制常数$1234赋值给W
28   B := W;    //B得到的值是W的低8位,即16进制的$34,也即10进制的52
29   ShowMessage(IntToStr(B));    //显示B的结果值52
30 end;
31 procedure TForm1.Button2Click(Sender: TObject);
32 var
33   S: AnsiString;
34   WS: WideString;
35 begin
36   S := '胡之恨';
37   WS := S;
38   ShowMessage(S[1]); //显示的是乱码,因为S[1]取出的是‘胡’的一半
39   ShowMessage(WS[1]); //显示''
40 end;
41 procedure TForm1.Button3Click(Sender: TObject);
42 var
43   B: Byte;
44 begin
45 B:=255;
46  {$R+}//允许越过范围
47   B := B + 1;
48   ShowMessage(IntToStr(B));
49 end;
50 end.

 

posted @ 2009-12-09 23:58  懒人博客  阅读(289)  评论(0)    收藏  举报