概述
delphi的数据类型[一]
delphi数据类型[二]
a、 整数类型: (通用类型<32位>:Integer-有符号;Cardinal-无符号)
具体:
有符号:Shortint<8位>,Smallint<16位>,Longint<32位 >
无符号:Byte<8位>,Word<16位>,LongiWord<32位 >
b、字符类型: (通用类型<8位>:Char -与AnsiChar等同)
具体:
AnsiChar<8位> :主要存放Ansi字符
WideChar<16位>:主要存放Unicode字符
c、布尔类型: (通用类型<8位>:Boolean-与ByteBool等同)
具体:
ByteBool<8位>,WordBool<16位>,LongBool<32位>
不同的布尔类型主要用于鱼其它编程语言及不同windows系统兼容。
d、枚举类型:
定义:type 枚举类型标识符=(key1[=val1],.。。。,keyn[=valn]) :n<=255
如果给某些key指定了值,则未指定值的key是前一个key值加1;
如果全部默认不指定值,则key1值为0,往后逐个加1。
e、子界类型:
定义:type 子界类型标识符=下界 ..下界
如:type SubInt=1..3 0;表示 1~30的整数
type SubChar='a'..'z';表示字符
※注:1、以上四种类型称为有序类型,即除第一个数为都有先行数、除最后一个数外都有后继数。在这里
(计算机里),整数是有限的。有序类型的数都有一个序号,称为序数。整数的序数为其本身,其他类型第一
个数序数为0,依次递增。
2、子界类型上、下界必须是有同一有序类型,且上界序数大于下界序数。
f、浮点类型: (通用类型<8字节>:Real-与Double等同)
具体:
Double<8字节>,Real48<6字节>Single<4字节>,
Extended<10字节>,Comp<8字节>,Currency<8字节>
g、字符串类型: (通用类型:String-与AnsiString等同)
具体:
ShortString :最多存放255个字符,第一个自己存放字符个数,不以NULL结尾
AnsiString :存放Ansi字符,以NULL结尾
WideString:存放Unicode字符,以NULL结尾
h、时间、日期类型:TDateTime -实际是浮点类型的别称
(2)复杂数据类型:
a、指针类型:
定义:type 指针类型标识符=^基本类型;
内在分配:New() 内存释放:Destroy()
对于Pointer 和PChar 用GetMem()或AllocMem()分配内存,用FreeMem()释放内存
分配内存后,就可以当成基本类型一样使用:指针类型标识符^
实际上常如下运用指针:
var 变量标识符:^基本类型;
为变量分配内存后就可以将(变量标识符^)当成普通变量使用。
b、记录类型:
定义:type 记录类型标识符=Record
字段1:类型;
...
字段n:类型;
end;
c、集合类型:
定义: type 集合类型标识符=Set of 基本类型的子集或子界类型;(<=255个元素)
d、变体(通用)类型: Variant;
(3)数组类型:
a、一维数组:
定义:type 数组标识符=Array[下标下限..下标上限] of 基本类型;
b、多位数组:
定义: type 数组标识符=Array[下限1..上限1,...,下限n..上限n] of 基本类型;
c、动态数组(变量):
var 标识符:array of 基本类型;
SetLength(标识符,个数);//分配空间
标识符:=nil;//释放
Delphi基本数据类型[三]
1.整型类型
Pascal中将整数类型分为基本的(Fundamental)和一般的(Generic)整数类型。取值范围如下所示。
基本整数类型数据
一般整数类型数据
当实际的取值大于所定义的类型时会出现溢出现象,取值范围越大的类型它对程序的开销也是越大的。在编写程序时,应当根据取值范围灵活的选择不同的定义方式,这样既可以节省程序开销,也可以提高程序的运行效率。
顺序类型中包括以下几个标准函数:
· Ord():取得序数类型的惟一对应值。
· Pred():取得前续的数值。
· Succ():取得后续的数值。
· Low():返回可取值的最小一个。
· High():返回可取值的最大一个。
2.字符类型
Delphi 7中有3种字符类型。字符类型也属于顺序类型,顺序类型标准函数的使用可参照整数类型。
示例:
procedure TForm1.Button1Click(Sender: Tobject);
var
my:char;
begin
my:='C';
edit1.Text:=inttostr(ord(my));
edit2.Text:=Pred(my);
edit3.Text:=Succ(my);
end;
3.布尔类型
布尔类型有4种,分别为Boolean、ByteBool、WordBool和LongBool,其中后3种是Delphi为兼容其它语言和Windows环境而设置的,在进行编程时应优先选择使用Boolean类型。布尔类型也属于顺序类型,取值范围为0(False)和1(True)。这4种类型中Boolean、ByteBool存储格式为8位,WordBool为16位,LongBool为32位。
4.枚举类型
枚举类型通过枚举表示其值的标识符来定义一个有序集合。它们的次序根据标识符的位置而定。有效地使用枚举类型,可以使程序表示的内容更加直观。枚举类型是用户自定义类型,定义语法如下:
Type
枚举类型名称= (值1,值2...值n);
枚举类型中的取值是用户自定义的标识符,它们应遵循标识符的命名规则。在括号内的标识符列表中,每个标识符只能出现一次。在程序中使用枚举类型还必须声明一个枚举类型变量,如:
Var
变量名:枚举类型名称;
也可以不预先用Type定义枚举类型而直接使用下面的方式定义枚举类型变量:
Var
变量名: (值1, 值2...值n);
5.子界类型
子界类型也是一种用户自定义类型。它规定了值的上界和下界及取值的类型。定义子界类型的语法如下:
Type
子界类型名称=值域下界..值域上界; //在上界和下界之间有两个“.”
或
Var
变量名:值域上界..值域下界; //直接将变量定义为子界类型
定义子界类型时所使用的上界与下界可以是常量,也可以是常量表达式。子界类型的使用与枚举类型相同。建议使用子界类型时最好把类型定义与变量声明分开,这样可以使程序更清晰一些。
注意:子界类型的上界与下界必须是顺序类型,也必须为同一顺序类型。
6.实数类型
实数类型定义了一个用浮点数表示的数字的集合。实数类型是无序的。
7.集合类型
集合类型是多个具有相同类型无素的集合。集合中的元素是无序的,另外集合中的元素不能出现重复。声明方法为:
Type
集合内型名=set of 集合元素类型;
例如:
Type
Numebers=set of Byte;
集合类型的使用与枚举类型相同,在使用时首先要声明一个集合类型变量。
转载于:https://www.cnblogs.com/cracksa/archive/2012/08/30/delphi_datatypes_9.html
最后
以上就是朴实鱼为你收集整理的Delphi基本数据类型delphi的数据类型[一]delphi数据类型[二]Delphi基本数据类型[三]的全部内容,希望文章能够帮你解决Delphi基本数据类型delphi的数据类型[一]delphi数据类型[二]Delphi基本数据类型[三]所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复