我的Delphi7里程碑(认识Delphi7的语句过程函数)

Delphi7升级到Delphi 2010、Delphi XE、Delphi XE2总结 在2010中String默认映射到UnicodeString,单个字符是2字节,所以上文中P1实际占用了8字节内存,而传给Move函数的长 度只有4字节,最终结果是P2="te"。 解决办法1: 修改String为AnsiString,该方案虽然可行,但你的程序就享受不到Unicode待遇了。 解决办法2: SetLength 函数不要修改,因为他的长度参数是字符长度,而不是字节长度。 Move函数的最后一个参数 Length(P1) 修改成 Length(P1)*SizeOf(Char)。 注 阅读详情
 
Delphi7_day03
一、运算符与表达式:
在这里我就不想对运算符与表达式进行太深入的了解,这和C++,java没什么太大的区别,因为我是要速成Delphi7所以主要是放在后面其他方面的研究。
二、语句:
       1、赋值语句:<变量名>:=<表达式>
       2、注释语句:{<注释内容>}或//<注释内容>再或(*<注释内容>*)
       3、if语句:if <条件> then [<语句1>] [else<语句2>];
       4、case语句:case <顺序表达式> of
                                   <整常型表达式1>:<语句>;
                                   <整常型表达式2>:<语句>;……
                                   [else <语句n+1>;]end;
       5、循环结构语句:
              For <循环变量>=<初值>to<终值>do //或把to变为DownTo
                     [<循环体>];
              To表示递增,downto表示递减
              While<条件>do[循环体];
              Repeat [<循环体>] until <条件>;//循环体可以不用begin..end;
              循环的中断,即break和continue和C++相同不说了
      
三、过程与函数
       Object_pascal语言提供两种类型子程序:过程和函数
       1、过程:运行结束后没有返回值的子程序称为过程,有三种过程,即标准过程、事件过程和自定义过程。
       a)标准过程:
              说一下下字符串处理过程:
                     调用格式                                          功能
              appendStr(s1,s2)                         合并字符串s1和s2,即s1:=s1+s2
              delete(S,n,m)                              在字符串S中删除从第n个开始,m个字符
              insert(Source,S,n)                       在字符串S的第n个字符处插入子字符串Source
              Val(S,V,Code)                              将字符串S转换为数值V,V可以是整或实型
                                                               Code是整形,如果Code不为0,表示转换出错
              Str(V,S)                                      将数值V转换为字符串S,如果V是整型,则S为
                                                               整数格式,如果V是实型,则S为科学计数格式
       DecodeDate(date,year,month,day);
       DecodeTime(time,hour,min,sec,msec);data,time都是TdateTime类型的,而year,month…都是word类型的。
       随机数:randomize();random(1000);
b)事件过程
       创建事件过程的时机就是在对象被创建之后。这些事件是由系统自己调用的。
c)自定义过程:
       自定义过程不与任何特定的事件相关联,只能由其他的过程或函数来调用。
 
 
声明如下:
       Procedure <过程名> ([形参表])
       [<局部声明>]
       Begin
       [<语句>];
End;
       调用:
              过程名(<实参表>);
       2、函数(Function)
       函数与过程的基本结构很相似,但是函数是有类型的,而且它可以返回一个值,所以函数的语法格式和调用方法都与过程有一定的区别。
       这里介绍几个函数:
       平方函数                     sqr(x)
       平方根函数                  sqrt(x)
       取整函数                     trunc(x)
       取小数函数                  frac(x)
       舍入函数                     round(x)
       随机函数                     random(x) 返回一个大于或等于0且小于x的随机数
       字符处理函数
       大小写转换                  LowerCase(s)                      大转换成小写并返回
                                          UpperCase(s);                      小转换成大写并返回
       比较字符串大小           CompareStr(s1,s2)               比较s1和s2的大小相等0
                                          compareText(s1,s1)
       合并字符串                  Concat(s1,s2,s3…)                     合并多个字符串,返回s1+s2+s3
       查找字符串                  pos(s0,s)                      返回s0在s中的位置(整数),空0
       求字符串长度              length(s);                             返回字符串s的长度
       截取子字符串              copy(s,n,m)           在s中截取从n后m的长度字符,空0
       进制转换                     inttoHex(x,y) 将x,10进制整数转换成16进制,y是最小位
       ASCII转换字符           chr(x)                          ASCII转换成字符返回
       格式化字符串              format(flag,args)    将字符串按照flag格式返回,args为参数
      
       自定义函数
       Function <函数名> ([<形参表>]):返回类型
       [<局部声明>]
       Begin
       [<语句>]
       End;
       函数的返回值通过函数名或预定义的result(隐含变量)带回。
       注意:result并不完全等同于函数名。当函数名被赋值时,等同于result;而当函数名出现在本函数的其他地方时,表示对函数的递归调用,与result不同。
       调用:
       变量名:=函数名(<实参表>)
 
 
 
3、参数传递
       参数传递有两种方式,即传数值的传地址,由形参表内各形参前不同的保留字来判断。和C++的一样!C++是用&而Delphi是用var和out这两个是有区别的,
Var表示将实参在内存中的地址传递给形参,这样实参和形参都表示同一个内存单元,如果在过程或函数中形参的值发生变化,将会影响到实参的值。
Out保留字使用比较特殊,相关的形参称为外部参数
       将实参的地址传递给形参后,形参和实参将共用同一个内存地址,则对其中任意一个量的重新赋值操作都将影响到另一个变量。
       值传递就是用const或不加任何保留字
4、重载
       指同一个过程名或函数名可以对应多个具体的实现,确定过程或函数的实现时,要求从参数的个数和类型上来区分。

   

  z到这里我在三天内把delphi7的一些基本语法学习完毕了,以后我还会对这些文章进一步改进,因为要速成所以写的不是很细也有很多错误,但是语法什么的内容应该不会有什么错误!可以作为不错的学习dephi的资料!在后面的几天我也要开始做delphi的项目了!

【Delphi 基础知识 7】条件选择语句 本文介绍条件选择语句 if 与 case的妙用 阅读详情

相关推荐

delphi TCP/IP读取发送信息

delphi7 idtcpserver/idtcpclient数据接发送实现

Delphi7--多分支Case语句

1、Case语句:        语法格式:               Case(表达式)  of                值1:语句1;                值2:语句2;                 ...                值n:语句n;                 Else   //这里的Else之前可以有分号             ...

的博客 7471

delphi7简单入门例程

此下载包包含9章,源程序必须用delphi 7.0软件打开编译才可使用,使用前请安装delphi 7.0。

delphi7的基础语法

1,新建一个 Console Application 控制台应用程序。 writeln();用于输出一句话,readln(字符创变量) ;用来读取一行,然后将读取的内容放在变量里面; .相同类型注释不能嵌套,如(**)不能和(**)嵌套,{ } 与 { } 不能嵌套。

云中雁012345之成长 1919

西门子PLC实战:基于1200/1500的工业物联网MQTT通讯全解析

本文详细解析了如何在西门子S7-1200/1500系列PLC上实现工业物联网MQTT通讯。通过从硬件准备、网络配置到TIA Portal中MQTT_Client功能块的实战编程,手把手指导工程师打通车间数据桥梁,解决信息孤岛问题,实现PLC数据高效上云或设备间互联。

whisky的博客 1089

CMOS sensor 基础

NA

m0_72053187的博客 1657

delphi6-7随机数

我们都知道在Delphi中获取随机数的函数是Random(),比如我们要取得1-100的随机数,一般是使用Random(100)+1,但使用这个函数取的随机数,其实只是个伪随机数,这是因为Random函数是根据随机种子采用固定算法取得的随机数,在程序运行中会导致每次运行会取得与上次运行相同的数字。但这里需注意的是,由于弧度取正弦,这个值与理论上-1<=x<=1还是有差别的,可以说其值在0<|x|<1范围内。//Random(100)所取得的值为>=0 而<100的值。一、常用的获取真正随机数的代码。

3d173的博客 858

【OpenClaw从入门到精通】第20篇:OpenClaw实战—从零搭建教育自动化助教系统(作业批改+智能答疑+学情分析)【2026实测】

本文基于OpenClaw开源框架,聚焦教育行业“答疑重复、批改耗时、学情模糊”三大核心痛点,提供从环境部署到功能落地的全流程实操方案。通过整合QQ群交互、代码分析、数据可视化等技能,构建“智能答疑+作业批改+学情分析”的自动化助教系统。系统支持7×24小时群聊答疑、多语言作业自动评审、学情数据周报生成,经实测可使助教工作时间减少60%、作业批改效率提升5-10倍、学情问题识别提前5周。文中包含完整配置步骤、可直接运行的代码示例及避坑指南,兼顾新手入门与进阶实操,帮助教育工作者快速落地自动化工具,从重复劳动中

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 1450

delphi if else

Delphi if else 用法 其实delphi中的IF语句和VB中的语句有点相像,都是IF .... THEN...不过DELPHI中的不同点就是语句的前后需要加个BEGIN,END.这个就相当于JAVA中的{}吧,呵呵。下边写几个IF语句的例子":1、IF.. THENif 1=1 thenbegin//这里写执行语句end;2、IF..ELSEif 1=1 thenbegin....

weixin_34102807的博客 389

量化 insider 爆料! 散户打板必亏?(打板必看!量化资金如何“隔日砸盘”收割散户)

量化开发 insider 爆料💥 散户追的涨停板📉,可能是机构故意做的陷阱!本文从技术视角拆解“涨停陷阱”,帮你看清市场真实逻辑🧠。

XiaoqiangClub的博客 451

利用dpabi和restplus提取ROI灰质体积学习笔记

目录前言一、数据准备二、利用dpabi提取ROI灰质体积三、restplus提取ROI灰质体积 前言 我利用SPM/CAT12进行灰质、白质、脑脊液分割之后分别已经得到各自的图像文件,在全脑水平已经做了统计分析。如果还想要进一步进行ROI的统计分析或者与量表等临床资料做相关分析,就需要提取ROI灰质体积。几个月没动过这数据了,突然心血来潮想学一下如何提取ROI灰质体积,以此篇博客记录我的提取ROI灰质体积学习过程。提取ROI灰质体积的方法及软件有许多种,本人尝试了dpabi和restplus。 一、数据准备

weixin_52073820的博客 9224

Delphi7 --浅谈Delphi过程与函数

1、Delphi的过程分为两种:系统标准过程与用户自定义过程      --系统标准过程是由系统内部定义好的过程,我们不需要写任何的代码,直接可以调用,如Insert()、Copy()等      --自定义过程有用户自己编写代码定义,它又分为事件过程与通用过程两种            --通用过程用于完成某个特定的功能,由我们自行创建并定义。                   格式:...

的博客 2126

全志V3S嵌入式驱动开发(解决kernel 5.2.y wifi驱动问题)

​【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 wifi模块,之前测试的时候,开发板上用的是esp8089,当时内核时4.14.y,测试也是通过的。链接地址在这里, https://blog.youkuaiyun.com/feixiaoxing/article/details/131178420?spm=1001.2014.3001.5501 那个时候测试的时候,我们就说过,wifi驱动可能是除了镜像制作之外,最复杂的一个

嵌入式-老费,一个分享专业嵌入式知识的blog 1158

Delphi语句语法、过程函数

转载至:http://blog.csai.cn/user1/9162/archives/2006/2946.html# 1.语句 1)简单语句 表达式(它是由操作符和操作数组成)、赋值语句、调用语句都属于简单语句。 2)复合语句 用begin……end把简单语句括起来组成复合语句。 3)赋值语句 赋值语句的符号是冒号+等号即 :=...

qq_18932003的博客 521

2025年华为杯中国研究生数学建模竞赛C题 围岩裂隙精准识别与三维模型重构 思路+代码

report += f"**位置 {i+1}**: ({loc[0]:.1f}, {loc[1]:.1f}, {loc[2]:.1f})\n"# ==================== 高级U-Net模型 ====================# ==================== 数据预处理与增强 ====================# ==================== 采样方法比较分析 ====================

YOLO 1527

手眼标定----眼在手上(eye-in-hand)

@TOC 标定之前你可以先拿个怡宝盖子进行测试。 第一步:打开halcon,采集,然后生成代码,显示十字架 第二步:把怡宝盖子放在十字架中心位置,在图像处理,找到怡宝盖子 第三步:找到怡宝盖子然后进行九点标定(眼在外帖子有讲),移动机器手然后分别拍9次照片,记录怡宝盖子坐标和当前机器坐标。这里移动到中心位置的时候记录一下单独记录一下坐标,等下要用。 顺序 第四步:拍完后利用vector_to_hom_mat2d算子求出矩阵,然后在利用write_tuple (HomMat2D, ‘路径’)进行保存。这里

苏州程序大白的博客 4280

Delphi语句、过程函数

====================================================== 注:本文源代码点此下载 ====================================================== 转载至:http://blog.csai.cn/user1/9162/archives/2006/2946.html# 1.语句 1)简单语句

javazhuanzai的专栏 390

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

Delphi7--循环结构语句

1、Delphi7实现循环结构的语句一共有3种:While语句、Repeat语句、For语句    Whil语句:       格式: While(循环条件)   do                      循环体;        说明:执行While循环体时 ,首先计算循环条件,若其为真,则执行循环体,否则,跳出循环 2、Repeat语句用来实现“直到型循环”,其语法格式及功能如下...

的博客 3923

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

我的Delphi7里程碑(认识Delphi7的基本类型)

  Delphi7_day01       Delphi7用的是Windows开发语言,所以采用的是windows的工作机制。其核心主要是三个:1)窗口:操作系统连续地监视每一个窗口的活动或事件的信号2)事件:可以是用户事件,也可以是系统事件3)消息:每发生一次事件,将引发一条消息发送至操作系统。对象是具有一定的属性,方法,事件的实体。可以把属性看作是对象的性质,把方法

xinxun的地盘 5928

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Delphi7中的函数与过程(Function and Procedure)

1.锁住空间的位置,可以选择Edit--->Lock component ,也可以在窗体设计面板下面找到组件排版功能栏,第二排里面有个带锁的图标,表示组件可以被锁住。点击一下,组件的大小和位置就不可改变了。 2.procedure没有返回值,Function有返回值; 3.为过程生明添加过程定义;Ctrl + Shift + C 快捷键; 如在过程生命部分写一个过程 procedure my

云中雁012345之成长 5239

Delphi 过程与函数

delphi分为过程和函数: delphi 过程以保留字procedure开始,没有返回值;函数以保留字function开始,有返回值。   一:  过程的框架: Procedure 过程名([形参列表])// 参数可选 var //声明常量、变量或另一个过程或函数等 begin 语句; end;  界面如图所示: 运行前: 代码如下: unit ...

weixin_42528089的博客 2126

delphi if 语句循环语句

if语句------------------------------------------------------------------------------------------------------------------------------------------------- 其实delphi中的IF语句和VB中的语句有点相像,都是IF .... THEN... 不过DE

加利敦张大师的专栏 1万+

DELPHI7的通配符比较的汇编函数

DELPHI7中的POS()函数是不能用通配符的,但是有汇编代码公开的,于是我想能否把此汇编函数改编成可能用通配符,有此想法已有多年了,最近我重新研究这个问题,发现是可行了,并做了出来,由于时间仓促,错误在所难免,希望能发现此汇编函数有BUG者能反馈给我知,我就多谢大家了。下面是我修改DELPHI7中的POS()而成的POSEX()的汇编源码,我试过可以通配符的,未知有无什么BUG,希望有人通知我BUG在何处。 此汇编函数支持?号只匹配一个中文。只支持?号和*号,不支持[]号。例如:子串为“Edit*1*

e271828的专栏 1398

delphi 过程、函数型变量分析

Procedure型变量: 在DELPHI中,函数、过程的地址可以赋给一个特殊类型的变量,变量可用如下方式声明: var p : procedure(num:integer); //过程 或: var f : function(num:integer):integer; //函数 也可定义一个过程(或函数)类型,再定义该类型的变量,如: type TMyProc = Procedure(num:

kevin's blog 1552
上一篇: 我的Delphi7里程碑(认识Delphi7的基本类型)
下一篇: Delphi7 窗口停靠效果
dingdingko
博客等级 码龄20年 50粉丝 47原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值