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;//释放
二、语句
首先要说一下begin end; 相当于c或者c++中的{ }。
(1)声明语句
常量:const 常量标识符[:类型]=常值;
变量:var 变量标识符:数据类型;
(2)表达式语句
由运算符组成的合法语句
运算符优先级: 运算符 优先级
@ not 1 (最高)
*,/,div,mod,and,shl,shr,as, 2
+,-,or,xor 3
>,<,>=,<=,<>,=,in,is, 4 (最低)
(3) with do end 语句
主要在操作记录类型或组件时使用。
示例:type people=Record //定义记录people
name:string;
addr:string;
age:integer;
sex:string;
end;
var Me:P