Delphi的语法基础.ppt_第1页
Delphi的语法基础.ppt_第2页
Delphi的语法基础.ppt_第3页
Delphi的语法基础.ppt_第4页
Delphi的语法基础.ppt_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第3章 Delphi的语法基础 n本章学习要点 l 学习Object Pascal的基本概念 l 学习Object Pascal的变量、常量及数据类型 l 掌握顺序和选择结构 l 掌握三种循环结构 l 掌握过程与函数的创建与调用 Delphi是一个基于Object Pascal语言的Windows应用程序 开发系统,在所有的事件处理过程和应用程序中都是使 用它来编写程序代码,因此学习Delphi的关键是学习和掌 握Object Pascal语言的语法与使用方法。 Object Pascal语言保留了Pascal语言具有可读性好、编写容 易的特点,这使得它很适合作Windows平台上的快速开发 语言。同时,使用Object Pascal语言编译器刨建的应用程 序只生成单个可执行文件(.EXE),正是这种结合,使 得Object Pascal成为Delphi这种先进集成开发包的编程语 言。 下面将讲解有关Object Pascal语言的一些基本语法规则,而 不是Pascal语言的一切细节。如果用户不熟悉Turbo Pascal 编程而又希望了解有关的内容的话,请参阅一些基础的 Pascal教程。 3.1 3.1 基本概念基本概念 首先介绍Object Pascal语言的最基本内容:标识符和运算符以 及语句的书写规则和符号约定。 3.1.1 标识符 标识符是所有编程语言都要使用到的概念。Object Pascal语言 程序是由多种语法成分构成的,这些语法成分包括常量、变 量、类型、函数、过程、单元等等。为了能够在程序中使用 这些语法成分的实例,用户就需要为这些实例各自取一个名 字也就是标识符。 在使用标识符前,用户必须首先声明它们。Object Pascal语 言的编译器会自动检查标识符的类型以确保标识符的赋值 是正确的类型。 Object Pascal语言对标识符的定义有着明确的规定。标识符 不区分大小写,标识符只能以字母或下划线开头,标识符 中只有前255位有效,标识符中不能包含空格,标识符不能 使用Object Pascal语言的保留字,对不同对象中相同标识符 的成分必须使用“.”分隔表示所属关系。 保留字(Reserved Words)是由系统规定的、具有特定意义的 单词。在编程时不能被重新定义或另作他用。Object Pascal语 言规定的保留字在Delphi集成开发环境的代码编辑器中是以黑 体加粗显示的。这些保留字包括:and、array、as、 asm、begin、case、class、const、constructor、destructor、dispinterface、div 、do、downto、else、end、except、exports、file、finalization、finally、for 、function、goto、if、implementation、in、inherited、initialization、inline、 interface、is、label、library、mod、nil、not、object、of、or、out、packed 、proceduce、program、property、raise、record、repeat、resourcestring、set 、shl、shr、string、then、threadvar、to、try、type、unit、until、uses、var 、while、with、xor、private、protected、public、published、automated、at 、on。 Object Pascal编程语言对单词的大小写是不敏感的。即不区分所有标识符和 保留字的大小写。 3.1.2 运算符 Object Pascal语言的运算符分为数学运算符、逻辑运算符、指针运算符、关 系运算符、字符串运算符、集合运算符、类运算符和运算符。其中数学 运算符包括:+、-、*、/、div、mod。逻辑运算符包括:not、and、or、 xor、shl、shr。指针运算符包括;、=。关系运算符包括:=、=、in。类运算 符包括:as、in。 3.1.3 语句的书写规则 Object Pascal程序语句书写比较自由,可以把多个语句放在一个程序行中, 也可把一个语句分多行书写,但需要记住Object Pascal的每个语句都必须以 分号“;”(半角)结束。在编写自己的Object Pascal程序时,要注意程序的 可读性。Pascal语言是英式结构语言,在程序中选择合适的缩排、大小写风格 ,并在需要时将程序代码分行,会使得程序代码能够很容易地被自己和他人读 懂。 对于较为复杂的程序常用到复合语句,复合语句是指将多个语句用begin和end 两个保留字包围起来,格式如下: begin ; ; ; end; 复合语句在Object Pascal中被视为一个语句,因此在end后必须加上分号 “;”。 3.1.4 语句格式中的符号约定 为了解释语法规则,在说明各语句、函数的格式和功能时用到表3-1中所列符 号,这些符号的含义详见表3-1。 符号 含 义 =1) or (y=4) and (zb then temp:=a else temp:=b; Result:=temp; /或者max:=temp; end; 3.6.4 SLMIS中函数的创建与调用 3 常量参数 如果不想使传递给函数或过程的参数被改变,就用const关键字来声明它。关键字 const能保护变量的值不被修改。 为了简化编程,提高程序执行效率,SLMIS中使用了大量的过程与函数,其中分解房 屋座落的函数使用较为频繁,房屋座落是将区、栋、单元、楼层和房号用“-”减号 相连接而成,例如“12-8-1-5-2”表示12区8栋1单元5楼层2号房。下面是根据给定座 落分解出房屋所属单元的函数。 unit upublicfunc1; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, shellapi, ComCtrls,DateUtils; function gethouseceng(const S: string):string; /返回房屋座落的单元号 implementation function gethousedanyuan(const S: string):string; var i,n:integer; t,u,v:string; begin u:=; i:=pos(-,s); n:=length(s); t:=copy(s,i+1,n-i); i:=pos(-,t); n:=length(t); if i0 then u:=copy(t,i+1,n-i); i:=pos(-,u); n:=length(u); if n0 then begin if (n0) and (i0) then result := Copy(u, 1, i-1); if (n0) and (i=0) then result:=u end 3.7 小结 可以看出上述函数创建被放在单元文件upublicfunc1.pas中,在调用该函数的单元 文件中,要在implementation的声明后加入uses upublicfunc1,这样才能调用 upublicfunc1.pas中的函数gethousedanyuan,假设房屋座落从edit1文本框中取得 ,分解以后的房屋单元被放到字符串变量danyuan中,以下代码是调用 gethousedanyuan函数的语句: else result :=; end; danyuan:=gethousedanyuan(trim(edit1.text); /返回房屋座落的单元号 在本章中,首先介绍了Object Pascal语言的基本概念,包括标识符、运算符、语句 的书写规则及其符号约定,然后是常量、变量及常见的几种基本数据类型:数值、 字符、布尔、数组、记录和指针;随后分别介绍了三种结构的程序设计思想和实现 方法,在程序设计中它是非常重要的。任何复杂的算法都可以用顺序、选择和循环 三中结构组合而成,所以这三种结构称为程序的三种基本控制结构;最后介绍了 Object Pascal语言的过程与函数的定义与调用,参数的传递,以及在实际应用中根 据需要如何创建函数并调用之。 3.8 习题3 1如何来定义Object Pascal语言中合法的标识符? 2Object Pascal中提供了哪些运算符?试

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论