Delphi程序设计基础PPT课件

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

指令符 automated export message package read safecall
指令符 cdecl external name pascal readonly stdcall
指令符 contains far near private register stored
第3页/共79页
• 本章主要介绍Object Pascal的标准数据类型。
• 3.2.1 数值型数据 • 3.2.2 字符数据 • 3.2.3 布尔型数据
第6页/共79页
3.2.1 数值型数据
1. 整型
整型是存储整数数据的类型,Object Pascal包括9种 形式的整型数据。
类型 短整型 小整型 长整型 64位整型 字节型 字型 长字型 整型 序数型
布尔运算 BoolToStr(True)
类型 布尔型 字节布尔型 宽布尔型 长布尔型
名称 Boolean ByteBool WideBool LongBool
字节数 1 1 2 4
取值 只能为0(False)或1(True) 0(False)或非0(True) 0(False)或非0(True) 0(False)或非0(True)
• 一般标识符可以由一个第或1多页/个共7具9页有适当意义的英文单词组成。
3.1.2 保留字和指令字
• 保留字
保留字 and class do file if interface not procedure resourcestring threadvar uses
保留字
保留字
array
as
const
第10页/共79页
3.3 常量与变量 • 常量和变量是学习各种编程语言进行程序设计的基础概念,分别代表了在
程序运行过程中两种不同状态的量。常量是指在程序运行过程中其值始终 不变的量;与之相反,变量则是程序运行过程中其值可以改变的量。 • 3.3.1 常量
• 在Pascal中用const关键字来声明常量,不需要在对常量赋值时声明常量的类型, 编译器能根据常量的值自动判断常量的类型并分配内存。(可靠修改、容易修改、可 读性强)
• 3.5.1 数 学 运 算 函 数 (round 函 数 , 和 random (range:integer)函数
• 3.5.2






p o s , l e n g t h , s i z e o f, c o p y, a p p e n d s t r, c o n c a t
• 3.5.3
3.2 数据类型
描述客观事物的数、字符以及所有能输入到计算机中 并被计算机程序加工处理的符号的集合称为数据。数 据的一个重要特征就是其所属的数据类型,数据的类 型不仅确定了该类数据的表示形式和取值范围,而且 还确定了数据所能够参加的各种运算。
标准数据类型属于Object Pascal内部约定的数据类型, 无需定义就可以直接使用。
第7页/共79页
3.2.1 数值型数据
2. 实型
实型是存储实数数据的类型,Object Pascal包括5种 形式的实型数据。
类型 单精度实型 扩展型 双精度实型
货币型
实型
名称 Single Extended Double
Currห้องสมุดไป่ตู้ncy
Real
字节数 4 10 8 8
8
取值范围 ±1.5×10-39~3.4×1038 ±3.6×10-4951~1.1×104932 ±5.0×10-324~1.7×10308 -922337203685477.5808~ 922337203685477.5807 ±5.0×10-324~1.7×10308
3.1.2 保留字和指令字
• 指令字
指令符 absolute default forward nodefault protected reintroduce virtual
指令符 abstract dispid implements overload public requires write
指令符 assembler dynamic index override published resident writeonly
• 单目运算符一般放在操作对象的前面,只有^可以放在操作对象 的后面。双目运算符都放在两个操作数之间。
• 有些运算符是根据给定的操作数的数据类型做相应处理的。例 如,运算符not对于整型的操作数说,做的是按位取反;对于逻 辑类型的操作数来说,它完成的则是逻辑取反。
• 除了运算符^、is和in外,其余操作符都可以对Variant类型的
constructor
downto
else
finalization
finally
implementation in
is
label
object
of
program
property
set
shl
to
try
var
while
保留字 asm destructor end for inherited library or raise shr type with
时间和日期函数
Encodedate,Decodedate,FormatDateTime
• 3.5.4 数 据 类 型 转 换 函 数 F l o a t To St r, D a t e t o St r
InttoStr, Str toInt,
• 3.5.5 格式输出函数 第fo1r5m页a/共t(7‘9页数1:%,数2:%d’,[1,88])
4
= <> > < <= >= in is
5
类别 域、指针引用 取非 乘除法与类型转换 加减法 比较操作
第14页/共79页
3.5 常用内部函数
• 为了尽可能地减少开发应用程序的难度和工作量, Delphi提供了一个内容十分丰富的程序库Run-Time Librar y (RTL),其中包括了大量的基本函数、过程、 常量和变量定义。RTL包含的函数、过程、常量等都是 在System单元中定义的,而System单元会自动地被 其他程序单元引用,所以用户编写的应用程序可以随时 调用RTL中可用的函数,而不用在程序的uses语句中引 用该单元。
类型类型名称名称说明说明枚举型枚举型enumeratedenumerated高级数据类型高级数据类型subrangesubrange高级数据类型高级数据类型集合类型集合类型setset高级数据类型高级数据类型数组类型数组类型arrayarray高级数据类型高级数据类型记录类型记录类型recordrecord高级数据类型高级数据类型文件类型文件类型filefile高级数据类型高级数据类型类类型类类型classclass高级数据类型高级数据类型类引用类型类引用类型classreferenceclassreference高级数据类型高级数据类型接口类型接口类型interfaceinterface高级数据类型高级数据类型指针类型指针类型pointerpointer高级数据类型高级数据类型过程类型过程类型proceduralprocedural高级数据类型高级数据类型可变类型可变类型variantvariant高级数据类型高级数据类型整型字符型布尔型枚丼型和子界型5种被称为顺序类型其叏值是一个有序的集合每一个可能的叏值都不顺序整数值有关即其叏值不某一整数相对应
• 3.3.2 变量
• 当在Object Pascal中声明一个变量时,变量名在类型的前面,中间用冒号隔开, 变量初始化通常要跟变量声明分开。Delphi能在var块中对全局变量赋初值。(声明 方法、命名格式、作用范围)
第11页/共79页
3.4 运算符和表达式
• 运算符是在代码中对各种数据类型进行运算的符号。表 达式由运算对象和运算符两部分组成。
(* (. *) .) .. // := <= >= < >
• 其中,左中括号“[”等价于“(.”,右中括号“]”等价于 “.)”,左大括号“{”等价于“(*”,右大括号“}”等价于 “*)”。
• 在Object Pascal语言中,标识符(Identifiers)用来标志 常量、变量、类型、属性、对象、过程、函数、程序、单元、 库和组件库等。标识符可以由任意长的一个不带空格的字符 串组成,但是只有前面的255个字符有效。标识符的第一个字 符必须是字母或下划线,其余字符可以是字母、数字或下划 线。
2. 字符串型
字符串型是存储字 符串数据的类型, Object Pascal包括4 种形式的字符串型 数据。
( P C h a r , PA n s i C h a r ,
PWideChar)
类型 短字符串型 长字符串型 宽字符串型 字符串型
名称 ShortString AnsiString WideString String
类型 整型 实型 字符型 字符串型 布尔型
名称 Integer Real Character String Boolean
说明 标准数据类型 标准数据类型 标准数据类型 标准数据类型 标准数据类型
第4页/共79页
3.2 数据类型
• 高级数据类型体现了特殊的数据结构,在使用之前必须 由用户自己定义。
第5页/共79页
高级数据类型 高级数据类型 高级数据类型 高级数据类型 高级数据类型 高级数据类型 高级数据类型 高级数据类型 高级数据类型 高级数据类型 高级数据类型 高级数据类型
说明
3.2 数据类型
• 整型、字符型、布尔型、枚举型和子界型5种被称为顺序类型, 其取值是一个有序的集合,每一个可能的取值都与顺序(整数 值)有关,即其取值与某一整数相对应。(有序数据类型常用 函数)
保留字 begin dispinterface except function initialization mod out record string unit xor
保留字 case div exports goto inline nil packed repeat then until
第2页/共79页
• 3.4.1 运算符
• Object Pascal语言中的运算符(Operators)有:
@、not、^、*、/、div、mod、and、shl、shr、as、+、-、 or、xor、=、>、<、<>、<=、>=、in和is等。
• 按照操作数数目的多少来分,运算符分为下面两类:单目运算 符(Unary Operator)和双目运算符(Binary Operator)。 上面的@、not和^为单目运算符,其余的为双目运算符。其中 +和-也可以作为单目运算符来使用。
第8页/共79页
3.2.2 字符数据
1. 字符型
字符型是存储单个 字符数据的类型, Object Pascal包括3 种形式的字符型数 据。
类型
名称
Ansi字符型 AnsiChar
宽字符型 WideChar
字符型
Char
字节数 1 2 1(2)
取值范围 扩展ANSI字符集 UniCode字符集 扩展ANSI字符集
数据进行操作。
第12页/共79页
3.4.1 运算符
• 在复杂的表达式中,各种运算符的优先级分别如下:
第一级(最高):@、not 第二级:*、/、div、mod、and、shl、shr、as 第三级:+、-、or、xor 第四级(最低):=、<>、<、>、<=、>=、in、is
• 尽管各种运算符的优先级比较明确,但是在具体编程的时候, 并不需要记住所有运算符的优先级顺序。常见的一些优先级顺 序比较好记,如乘、除运算符的优先级比加、减运算符的优先 级高。在优先级顺序不太明显的地方,可以多加一些小括号以 明确表达式的结合次序。
类型 枚举型 子界型 集合类型 数组类型 记录类型 文件类型 类类型 类引用类型 接口类型 指针类型 过程类型 可变类型
名称 Enumerated Subrange Set Array Record File Class Class Reference Interface Pointer Procedural Variant
3.1 标识符与保留字、指令字
• 3.1.1 标识符
• Object Pascal语言使用的是ASCII码字符集,包括字母A~Z、 a~z、数字0~9和其他的一些标准字符。
• 下面的单个字符可作为特殊符号:
#$&'()*+,?./:;<=>@[]^{}
• 另外,有些字符对也作为单个的特殊符号,具体有:
名称 Shortint Smallint Longint Int64 Byte Word Longword Integer Cardinal
字节数 1 2 4 8 1 2 4 4 4
取值范围 -128~127 -32768~32767 -2147483648~2147483647 -263~263 0~255 0~65535 0~4294967295 -2147483648~2147483647 0~4294967295
第13页/共79页
3.4.2 表达式
一个表达式由运算对象和运算符两部分组成。 运算符可以分为算术运算符、逻辑运算符、串 运算符、字符指针运算符、集合运算符、关系 运算符以及@运算符。运算符的优先顺序见表。
运算符
优先顺序
^
1
@ not
2
* / div mod shl shr and as 3
+ - or xor
最大长度 255个字符 231个字符 230个字符 231个字符
所需内存空间 2~256B 4~2GB 4~2GB 4~2GB
第9页/共79页
3.2.3 布尔型数据
布尔型数据用于进行逻辑运算,Object Pascal 包括4种形式的布尔型数据。
后3种类型是为了兼容其他语言而设置的,编 程时应尽量使用Boolean类型。
相关文档
最新文档