位置: 编程技术 - 正文

Perl中的子程序学习笔记(perl编程)

编辑:rootadmin

推荐整理分享Perl中的子程序学习笔记(perl编程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:perl进程,perl进程,perl fork子程序,perl fork子程序,perl 子程序数组参数,perl fork子程序,perl 子程序,perl 子程序,内容如对您有帮助,希望把文章链接给更多的朋友!

一、定义

函数可分为系统函数和用户函数。子程序即执行一个特殊任务的一段分离的代码,它可以使减少重复代码且使程序易读。PERL中,子程序可以出现在程序的任何地方。定义方法为:二、调用 调用方法如下:1、用&调用 2、先定义后调用 ,可以省略&符号建议采取这种方式。3、前向引用 ,先定义子程序名,后面再定义子程序体4、用do调用 do my_sub(1, 2, 3);等价于&my_sub(1, 2, 3);三、返回值 缺省的,子程序中最后一个语句的值将用作返回值。语句return (retval);也可以推出子程序并返回值retval,retval可以为列表。四、局部变量 子程序中局部变量的定义有两种方法:my和local。其区别是:my定义的变量只在该子程序中存在;而local定义的变量不存在于主程序中,但存在于该子程序和该子程序调用的子程序中(在PERL4中没有my)。定义时可以给其赋值,如: 五、子程序参数传递 1、形式 2、传送数组 参数为数组时,子程序只将它赋给一个数组变量。如中@list2必然为空。但简单变量和数组变量可以同时传递:六、递归子程序

Perl中的子程序学习笔记(perl编程)

PERL中,子程序可以互相调用,其调用方法与上述相同,当调用该子程序本身时,即成了递归子程序。递归子程序有两个条件:1、除了不被子程序改变的变量外,所有的变量必须的局部的;2、该子程序要含有停止调用本身的代码。

七、用别名传递数组参数

1、用前面讲到的调用方法&my_sub(@array)将把数组@array的数据拷贝到子程序中的变量@_中,当数组很大时,将会花费较多的资源和时间,而用别名传递将不做这些工作,而对该数组直接操作。形式如:2、此方法类似于C语言中的传递数组的起始地址指针,但并不一样,在定义数组的别名之后,如果有同名的简单变量,则对该变量也是起作用的。如: 当子程序执行完,主程序中的$foo的值已经成了,而不再是了。3、用别名的方法可以传递多个数组,如:在该子程序中,subarray1是array1的别名,subarray2是array2的别名。八、预定义的子程序 PERL5预定义了三个子程序,分别在特定的时间执行,它们是:BEGIN子程序在程序启动时被调用;END子程序在程序结束时被调用;AUTOLOAD子程序在找不到某个子程序时被调用。你可以自己定义它们,以在特定时间执行所需要的动作。如: 若同一个预定义子程序定义了多个,则BEGIN顺序执行,END逆序执行。

Perl中的列表和数组学习笔记 一、列表列表是包含在括号里的一序列的值,可以为任何数值,也可为空,如:(1,5.3,"hello",2),空列表:()。注:只含有一个数值的列表(如:(.2))与该

Perl中的文件读写学习笔记 一、打开、关闭文件语法为open(filevar,filename),其中filevar为文件句柄,或者说是程序中用来代表某文件的代号,filename为文件名,其路径可为相对路径,

Perl实现删除Windows下的图片缓存缩略图Thumbs.db 接手以前别人做的项目,发现SVN里的ignore里并没有对*.db处理,导致图片的缓存缩略文件都被提交了,而我只要打开图片文件夹,就意味着Thumbs.db发生了

标签: perl编程

本文链接地址:https://www.jiuchutong.com/biancheng/372394.html 转载请保留说明!

上一篇:什么是Perl?编程语言Perl详细介绍(perl主要用处)

下一篇:Perl中的列表和数组学习笔记(perl实例)

  • 增值税留抵退税怎么做账务处理
  • 消费税和所得税的关系
  • 物业公司要交税吗?
  • 特定资产收益权融资业务
  • 环境评估费应计入什么科目
  • 房屋租赁收入核定征收
  • 企业股权转让收入申报表填哪里
  • 银行汇票应计入什么科目
  • 复利现值系数和普通年金现值系数关系
  • 合并报表汇兑损益怎么填
  • 无偿代建政府公告
  • 厂房出租税收分类
  • 企业间借贷利息规定
  • 发生破损
  • 所得税工资账载怎么算
  • 建筑业跨区预缴增值税未预缴
  • 专票电话写错了怎么办
  • 增值税可以提前申报不?
  • 公司经营权补偿款会计处理?
  • 收货款时少收几十元,分录怎么做
  • 网吧登录qq安全吗
  • 公司作为股东有什么好处
  • 罗汉松的养殖方法剪枝视频
  • 自定义修改器
  • 高薪员工辞退补偿金
  • 应付账款会计分离
  • 不动产售后回租如何处理
  • laravel debug rce
  • 车辆保险费用的申请模板
  • PHP isset()与empty()的使用区别详解
  • 递延收益会计科目核算什么内容
  • 【AIGC】6、Segment Anything | Meta 推出超强悍可分割一切的模型 SAM
  • vgremove命令
  • 关于增值税普通电子发票
  • 勾选发票提交后如何
  • 主营业务收入和营业外收入的区别
  • 返利开红字发票怎么做账
  • python分割语句
  • 公司购入车辆的增值税怎么算
  • 企业所得税季报人数季度初值
  • 建筑公司内账收什么费用
  • sql server数据表
  • 为什么开票需要提供开户许可证
  • 税控系统的维护包括哪些内容
  • 分公司注销怎么起诉公司
  • 材料发票税额
  • 汇款汇给别人了应该怎么办
  • 出售其他债权投资产生的收益为什么计入留存收益
  • 电子发票怎么知道发票代码
  • 建筑施工安全费用提取标准
  • 停产期间制造费用如何处理
  • 小企业购进商品怎么入账
  • 美容行业如何做好管理工作
  • 盈余公积根据什么确定
  • 投资收益怎么做帐
  • 买钢管扣件
  • 明细分类账的格式与登记方法
  • linux/mac安装mysql忘记密码的解决办法
  • mysql5.6解压版安装教程
  • 详谈是什么意思
  • auepuc.exe是什么软件
  • linux检查文件内容
  • winmgm32.exe - winmgm32 是什么进程
  • 开机密码忘记了怎么打开手机
  • WIN10补丁无法卸载
  • win7如何变快
  • win7开机屏幕狂闪不停怎么解决
  • win7系统笔记本无线网络找不到
  • win7怎么使用打印机打印
  • Extjs3.0 checkboxGroup 动态添加item实现思路
  • js的文件操作
  • 使用jquery实现的项目
  • shell 判断进程是否存在
  • 在dos下运行
  • 查找第一个字符
  • python发送mq消息
  • javascript包括在html中
  • python爬虫模拟浏览器
  • unity3d ik
  • js调用失败
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设