delphi基本语法.docx
- 文档编号:6011655
- 上传时间:2023-05-09
- 格式:DOCX
- 页数:15
- 大小:481.78KB
delphi基本语法.docx
《delphi基本语法.docx》由会员分享,可在线阅读,更多相关《delphi基本语法.docx(15页珍藏版)》请在冰点文库上搜索。
delphi基本语法
delphi基本语法
1.工程文件结构
源文件联系着unit单元,delphi主模块源文件格式为.dpr,其他模块为.pas,一个完整程序由一个.dpr和若干.pas组成。
2..dpr程序结构
一个.dpr由程序头、[use从句]、主程序块组成。
一个典型工程文件如下:
1programProject;
2{$APPTYPECONSOLE}
3uses
4SysUnits;
5begin
6
7end.
程序头指示所编写程序名称,良好的程序,.dpr代码尽量少,尽量将代码分布在.pas中然后再在.dpr里调用。
在程序主文件使用到的所有.pas文件必须列在uses从句里。
用begin和end包围的一段代码称为一个代码块。
工程文件含有一个主程序块用于存放主程序代码,工程文件中的全局标识符必须声明于begin之前。
3.单元文件结构
程序的每个子模块称为一个单元,每个单元存储在一个.pas文件中,一个文件对应一个单元。
单元文件后缀名.pas,每个.pas文件依次包括:
单元名称、Interface关键字、implementation、[initialization]、[finalization]、关键字end。
一个完整的.pas文件如下:
1unitUnit1;//单元名称
2
3interface//interfae起始部分
4uses...
5
6implementation//implementation起始处
7uses.....
8
9initialization//initialization部分起始处
10.....
11
12finalization//finalization部分起始处
13.....
14
15end.//单元文件结尾(end后必须以句号结尾)
unit名称与.pas文件名称一致,一个.dpr中不能应用两个名称相同的.pas.
interface至implementation之间的部分称为interface部分。
该部分可定义变量、常量、例程等。
并非只有此处才可以定义标识符,但只有此处定义的标识符才能被其他文件访问(全局标识符)。
此部分定义的例程只是一个原型,具体的实现部分则放在implementation中。
uses关键字紧接着interface之后,两者间不允许有任何其他代码。
implementation至initialization之间的部分可书写例程的体代码,此处定义的比变量、常量、例程等,只能在本implementation单元使用,interface部分和其他单元无法使用。
initialization至finalization之间的部分可选,此部分的代码在程序启动时运行,若多个单元中都包含该部分,则按照工程文件uses顺序执行。
finalization部分可有可无,仅当initialization存在时才可使用此部分。
程序退出时使用此部分代码,除非程序由Halt强行退出。
当多个单元都存在此部分,运行顺序与initialization相反。
4.单元语法与uses从句
5.delphi的数据类型
简单类型包括:
整形、字符型、布尔型、枚举、子界类型、实型。
除实型以外,都是有序类型,即每个值在值域中都有一个序数。
6.整形:
7.实型:
8.字符类型:
包括ansiChar和WideChar,ansiChar使用一个字节表示一个字符,WideChar则用两个字节表示一个字符。
二者之间不能相互赋值。
9.布尔型:
用于判断真假,只有true和false两种值。
delphi内置4中布尔类型:
Boolean/ByteBool/WordBoolLongBool,内存中分别占1、1、2、4个字节。
10.枚举类型:
type
名=(标识符1,标识符2,标识符3.。
。
。
);
11.子界类型:
type
子界类型名=下界..上界
结构类型包括:
集合、数组、记录
12.集合:
type
set1=setof有序值得集合
例子:
type
set1=setof0..10;
type
set2=setof(red,green,blue);
type
set3=setofbyte;
13.数组:
静态:
一维:
type
myarr=Array[3..5]ofinteger//序号是3、4、5值为integer类型
多维:
type
myarr=Array[1..3]ofArray[3..5]ofinteger;
或
type
myarr=Array[1..3,3..5]ofinteger;
动态:
type
dmyarr=arrayofchar;
setlength(dmyarr,100);
dmyarr[0]..dmyarr[100-1]
setlength(dmyarr,0);
var
dal:
dmyarr;
14.记录类型:
type
trec=record
mem1:
char;
mem2:
integer;
...
end;
15.字符串类型:
16.指针类型:
指针的声明:
varansiStr:
^AnsiString;
或先声明类型在声明变量:
typepansiStr=^AnsiString;
varansiStr:
pansiStr;
指针的赋值:
方式有二,即将另一指针变量值赋给该指针变量,此两个变量指向同一个地址;或者将某个变量的地址赋给该变量。
@取址符如@ansiStr
^取值符如ansiStr^
17.变体类型:
variant
18.运算符
有序类型运算符:
ord:
返回有序值在值域中的序数
如:
ord('A')=65
pred:
返回指定值的前一个值
pred('B')=A
succ:
返回指定值的下一个值
succ('A')=B
high:
返回变量能够表示的最大值或某类型的上界
high(byte)=255
low:
与high相反
数学运算符:
+
-
*
/
div整除
mod求余
逻辑运算符:
not反
and且
or或
xor异或
位运算符:
not按位取反
and按位取且
or按位取或
xor按位取异或
shl左移
shr右移
字符串运算符:
+将字符串连接
集合运算符:
指针运算符:
关系运算符:
19.条件语句
if语句
1if<条件表达式>then
2<语句1>
3else
4<语句2>;
20.选择语句
1Case选择表达式of
2常量1:
语句1;
3...
4常量n:
语句n;
5Else
6...
7End;
21.循环语句
1》while
1While条件表达式do
2循环语句;
例:
whilei begin sum: =sum+i; i: =i+1; end; 2》Repeat repeat循环体 until条件表达式 例: repeat i: =i+1; sum: =sum+i; untili=n; 3》for for计数器: =初值to/downto终值do 循环体 例: fori: =1to/downtondo writeln('hellodelphi'); 4》for...in forvinsetdo 循环体 例: var myset: setofAnsiChar; ch: AnsiChar; begin myset: =['1','2']; forchinmysetdo writeln(ch); end. forin还可以遍历数组、字符串、类、接口、记录。 22.continue和break语句 23.程序终止 exit: 退出当前正在执行的程序块,不会退出整个程序,除非将其用在了主程序块(.dpr文件中)中。 procedureMi; begin exit; end; 或返回一个参数,该参数类型和函数返回类型一致 functionMi: string begin exit('str'); end; Halt: 引发异常中断并通过中断直接退出整个程序。 procedureMi; begin Halt; end; terminate: delphi窗体程序中含有一个全局程序对象(一般是application),其中的terminate方法可在窗体程序的任何地方使程序正常中断并退出。 procedureTForm1.Button1Click(sender: TObject); begin Application.terminate; end;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- delphi 基本 语法