一:简单类型
包括:整形、字符型、布尔型、枚举、子界类型、实型。除实型以外,都是有序类型,即每个值在值域中都有一个序数。
1.1整型
包括Integer、Cardinal、Shortint、Smallint、Longint、 Int64、Byte、 Word、Longword 以及UInt64 共 10种具体类型。
1.2字符类型
包括ansiChar和WideChar,
ansiChar使用一个字节表示一个字符,WideChar则用两个字节表示一个字符。二者之间不能相互赋值。
1.3布尔型
用于判断真假,只有true和false两种值。
delphi内置4中布尔类型:Boolean/ByteBool/WordBoolLongBool,内存中分别占1、1、2、4个字节。
1.4枚举类型
type
名 = (标识符1,标识符2,标识符3.。。。);
1.5子界类型
type
子界类型名 = 下界..上界
type
TSomeInts = 1…250; //子界类型含有1~250个整数
TIntSet = set of TSomeInts; //集合TIntSet是子界类型TSomeInts的一个有限子集
1.6实型
二:结构类型
集合、数组、记录,文件*、类*、类引用*、接口*
2.1集合类型
type
set1 = set of 有序值得集合
type
set1 = set of 0..10;
type
set2 = set of (red,green,blue);
type
set3 = set of byte;
2.2数组类型
静态一维:
type
myarr = Array[3..5] of integer //序号是3、4、5值为integer类型
静态多维:
type
myarr = Array[1..3] of Array[3..5] of integer;
或
type
myarr = Array[1..3,3..5] of integer;
动态:
type
dmyarr = array of char;
var
dal:dmyarr;
2.3记录类型
type
Thr_emp _type= record //包含内容从record关键字开始
empID:string[10];
empName:string[30];
age:Integer;
band:char;
salary:Currency;
end;
//上述定义记录的类型Thr_emp
//记录使用方法
var
hr_emp : Thr_emp;
begin
hr_emp.empID :=’C10094207’;
hr_emp. empName :=’wh_zhang’;
hr_emp. age :=118;
hr_emp. salary :=15000.00
end
三、字符串类型
主要有四种:Shortstring、Ansistring、Widestring、 Shortstring。
四、指针类型
指针的声明:
var ansiStr :^AnsiString;
或先声明类型在声明变量:
type pansiStr = ^AnsiString;
var ansiStr:pansiStr;
指针的赋值:
方式有二,即将另一指针变量值赋给该指针变量,此两个变量指向同一个地址;或者将某个变量的地址赋给该变量。
@取址符 如@ansiStr
^取值符 如ansiStr^