delphi数据类型

1.Simple:

1.1.Ordinal:

                  Integer:

                            Integer              4byte

                            Cardinal            un_4byte

                            Shortint             1byte

                            Smallint             2byte

                            Longint              4byte

                            Int64                  8byte

                            Byte                   un_1byte

                            Word                  un_2byte

                            LongWord         un_4byte

 

                  Character

                            Char

                            AnsiChar

                            WideChar

 

                  Boolean

                            Boolean

                            ByteBool

                            WordBool

                            LongBool

 

                  Enumerated

 

                  Subrange

 

1.2.Real

                   Real                    8byte        15-16精度

                   *Real48             6byte        11-12精度

                   Single                 4byte        7-8精度

                   Double               8byte        15-16精度

                   Extended          10byte      19-20精度

                   *Comp               8byte        19-20精度

                   Currency           8byte        19-20精度

 

2.String

                            *ShortString

                            AnsiString

                            WideString

                            PChar

                            PAnsiChar

                            PWideChar

3.Structured

                            Set

                            Array

                            Record

                            File

                            Class

                            Class reference

                            Interface

4.Pointer

                            无类型指针

                            有类型指针

5.Rrocedural

                            普通过程类型

                            对象过程类型

6.Variant

                            Variant

                            OleVariant

 

注:蓝色标记表示可直接使用;*号表示向后兼容,不再使用。

 

数据类型解释:

1.Ordinal有序类型:该类型的变量有序变量只能在取值范围中取某个位置上的变量,不能越界。

Integer基本类型是Integer和Cardinal。

Character基本类型是Char,AnsiChar和Char处理单字节,WideChar处理多字节。

Boolean基本类型是Boolean,ByteBool占用一个字节,WordBool占用两个字节,LongBool占用四个字节。

Enumerated枚举类型定义有序值的集合,索引号从0开始。

Subrange子界类型定义有序值的集合,但是子界的有序值必须在其他有序类型定义过,索引由父类决定。

 

2.Real实数类型:基本类型是Real。目前等同于double。声明变量一般使用Double和

Single,在过程中定义可传递任意参数时使用Extended。

 

3.String字符串类型:ShortString在内存中占用0..255个字节,第0字节存储字符串长度。为了避免浪费空间,可以使用String[MaxLength],占用MaxLength+1个字节。AnsiString是单字节存储,WideString是两字节存储一个字符。PChar申明以NULL结尾的字符串指针,这个字符串的字符是Char型,相当于指向一个Char串。

 

4.Structured构造类型:包含多个元素或者字段。Set类型的基本类型可以是Enumerated和Subrange,所以容纳的是有序值。Array分为静态数组和动态数组,动态数组需要使用SetLength动态分配空间,并且可以使用SetLength重新分配空间,已有数据会被保留。Record是多个任意元素的集合。File类型用来读取文件。

5.Pointer指针类型:分为有类型指针和无类型指针。占用四个字节。

 

6.Variant可变类型:Variant可存储大部分不同的类型,指针类型只能使用PVariant来存储。Variant类型变量有三种状态:Unassigned(没有值),Null(值为空)和非Null。默认是Unassigned状态。

posted @ 2015-07-27 14:36  ChenYao_Freedom  阅读(1492)  评论(0编辑  收藏  举报