当前位置:首页 > 教育培训 >

delphi入门基础教程(delphi范例完全自学手册)

来源:原点资讯(www.yd166.com)时间:2023-06-01 08:23:46作者:YD166手机阅读>>

delphi入门基础教程,delphi范例完全自学手册(1)

最初的Pascal 语言是以一些简单的概念为基础建立起来的,这些概念现在普遍出现在编程语言中。最重要的概念当属数据类型,数据类型决定了变量可取的值,以及可在这些值上进行的操作。Pascal 数据类型的概念强于C语言及早期的BASIC语言,在C语言中算术数据类型是可以互换的,而早期的BASIC语言中根本没有与数据类型相似的概念

关键字var

Pascal 变量在使用前必须声明,声明变量时必须指定一种数据类型。下面是变量声明的例子:

var Value: Integer; IsCorrect: Boolean; A, B: Char;

(1)关键字var可以在许多地方使用,放在函数或过程的开始部分,用来声明函数或过程的局部变量。也可以放在单元中,用于声明全局变量。

(2)var关键字之后是一组变量名列表,每个变量名后跟一个冒号和数据类型名,一行中可以声明多个变量,如上例中最后一句。

(3)一旦变量的类型被指定,你只能对变量执行该变量类型支持的操作。例如,在判断操作中用布尔值,在数字表达式中用整型值,你不能将布尔值和整型值混用(在C语言中可以这样)。

变量赋值

使用简单的赋值语句,可写出下面的代码:

Value := 10; IsCorrect := True;

但下面的语句是不正确的,因为两个变量数据类型不同:

Value := IsCorrect; // error

在Delphi中编译这句代码,会出现错误信息:Incompatible types: 'Integer' and 'Boolean'.(类型不兼容:‘整型’和‘布尔型’)。把一个 True 或 False 的值赋给一个整型变量没有什么意义。

初始值

所谓的初始值就是某个变量在第一次声明时所赋的值,需要特别注意的是在Delphi中全局变量是有默认初始值的,其初始值一般跟类型有关系,例如

program Project1; {$APPTYPE CONSOLE} {$R *.res} uses System.SysUtils; var Num: Integer; begin Writeln(Num); Readln; end.

上面案例中Num变量为全局变量而类型为Integer所以其初始值为0,当然全局变量还可以在声明时直接赋初始值,例如下面的代码

uses System.SysUtils; var Num: Integer=10; begin Writeln(Num); Readln; end.

局部变量不可以在声明的时候赋值,同时局部变量没有默认的初始值,如果不对局部变量做初始化赋值系统会给一个没有任何意义的随机值,所以在使用局部变量时首次引用建议是赋值操作

program Project1; {$APPTYPE CONSOLE} {$R *.res} uses System.SysUtils; procedure Show (); var Num: Integer; begin //此处打印输出Num的值为一个随机的整数 Writeln(Num); end; begin Show(); Readln; end.

这也是为什么我们在定义局部变量的时候开始都需要赋值为0或者nil的原因

关键建字const

对于在程序运行期间保持不变的值,Pascal 允许通过常量来声明。声明常量不必特定数据类型,但需要赋一个初值。编译器会根据所赋初值自动选用合适的数据类型。例如:

const Thousand = 1000; Pi = 3.14; AuthorName = 'Marco Cantù';

Delphi 根据常量的值来决定它的数据类型。上例中的Thousand 变量,Delphi会选用SmallInt数据类型 (短整型--能容纳Thousand变量的最小整数类型)。如果你想告诉Delphi 采用特定的类型,你可在声明中加入类型名,方法如下:

const Thousand: Integer = 1000;

对于声名的常量,编译器有两种编译选择:

(1)为常量分配内存,并把常量的值放入内存

(2)在常量每次使用时复制常量值。第二种方法比较适合简单常量。

常量其实也称为只读变量,含义即只能读不能写,也就是会说它的值不能改变

资源串常量

我的理解是这一类的常量被当作了程序的资源数据进行处理,例如当定义字符串常量时,你可这样写:

const AuthorName = 'Marco Cantù';

从Delphi 3 开始,你可以用另一种方式写:

resourcestring AuthorName = 'Marco Cantù';

上面两个语句都定义了一个常量,也就是定义了一个在程序运行期间保持不变的值,但两者的实现过程却不同,用**resourcestring **指令定义的字符串变量将被保存到程序资源的字符串表中。

例如:中设置了一个按钮, 相应代码如下:

resourcestring AuthorName = 'Marco Cantù'; BookName = 'Essential Pascal'; procedure TForm1.Button1Click(Sender: TObject); begin ShowMessage (BookName #13 AuthorName); end;

以上代码中的两个字符串将分两行输出显示,因为字符串被分行符 #13 隔开。

当你用资源编辑器打开执行文件时,你会在程序资源中看到你所定义的字符串。这意味着字符串并没有进入编译代码,而是保存在执行文件 (EXE文件) 的一个单独区域。

简而言之,采用资源的好处一方面可让Windows 来完成有效的内存处理,另一方面不用更改源代码就可实现程序的本地化 (把字符串翻译成不同的语言)。

栏目热文

delphi有前途吗(delphi现在是不是不好招聘了)

delphi有前途吗(delphi现在是不是不好招聘了)

Delphi 25岁了!尽管它不再是很多 Windows 开发的明显选择,但它的“长寿”证明了其性能之高。回想起来,为什...

2023-06-01 08:08:37查看全文 >>

delphi为什么跌落神坛

delphi为什么跌落神坛

Delphi,曾经的快速搭建王者,被称为VB杀手,如今记得它,使用它的人应该不多吧?“真正的程序员用C ,聪明的程序员...

2023-06-01 08:20:18查看全文 >>

delphi自学大概要多久会java

delphi自学大概要多久会java

其实学java一般要多久?因人而异,例如一个零基础的小白自学java,每天学习8个小时来算,而且在有学习资料的基础上,每...

2023-06-01 08:02:35查看全文 >>

delphi 从入门到精通(delphi技术手册电子版)

delphi 从入门到精通(delphi技术手册电子版)

1.DelphiXE程序设计入门1.1Delphi简介Delphi,是Windows平台下著名的快速应用程序开发工具(R...

2023-06-01 07:52:31查看全文 >>

delphi自学方法(delphi零基础入门教程)

delphi自学方法(delphi零基础入门教程)

方法是属于一个给定对象的过程和函数,方法反映的是对象的行为而不是数据,前一篇提到的对象的两个重要的方法:构造方法和析构方...

2023-06-01 07:57:53查看全文 >>

delphi自学注意点(delphi自学需要多久)

delphi自学注意点(delphi自学需要多久)

本节内容继续讲Layout系列的组件,上一篇本人说了,在程序界面布局中建议多用Layout组件,Layout组件究竟比P...

2023-06-01 08:15:39查看全文 >>

小型家用缝纫机不上线是怎么回事(家用缝纫机怎么不上线)

小型家用缝纫机不上线是怎么回事(家用缝纫机怎么不上线)

缝纫机压了些厚材料,很吃力,然后就提不上线了。拆~研究发现,针不够长,梭挂不住线,难道因料子太厚压不动导致针杆松了上移?...

2023-06-01 08:29:51查看全文 >>

小型缝纫机不上线怎么解决(小型缝纫机使用视频)

小型缝纫机不上线怎么解决(小型缝纫机使用视频)

缝纫机压了些厚材料,很吃力,然后就提不上线了。拆~研究发现,针不够长,梭挂不住线,难道因料子太厚压不动导致针杆松了上移?...

2023-06-01 08:27:01查看全文 >>

新式小型缝纫机放不上线什么原因(家用小型缝纫机不上线是什么毛病)

新式小型缝纫机放不上线什么原因(家用小型缝纫机不上线是什么毛病)

缝纫机压了些厚材料,很吃力,然后就提不上线了。拆~研究发现,针不够长,梭挂不住线,难道因料子太厚压不动导致针杆松了上移?...

2023-06-01 07:56:22查看全文 >>

微型缝纫机带不上线咋办(202微型缝纫机不上线)

微型缝纫机带不上线咋办(202微型缝纫机不上线)

缝纫机压了些厚材料,很吃力,然后就提不上线了。拆~研究发现,针不够长,梭挂不住线,难道因料子太厚压不动导致针杆松了上移?...

2023-06-01 07:50:53查看全文 >>

文档排行