位置: - 正文

perl中子程序中参数的两种引用(传递)方式介绍(perl中\s+)

编辑:rootadmin

下面是一个例子:得到的结果如下: 在这个例子中,子程序中有两个参数@i和@j,当我们将这两个参数传递到子程序的时候,子程序将他们全部放入了内置数组@_中,然后在@_中@i和@j的不同没有了,也就是在@_中混为一谈了,无法区分。当我们想重新得到他们两个的时候,我们发现,@i=1 2 3 a b c,而@j为空。在很多时候这显然不是我们想要得到的结果,所以我们要用到pass by reference(在大骆驼书第六章中被翻译为”传入引用“)我们仅仅把代码做一个变动,也就是在程序如下:结果如下:我们可以观察最后的结果,在调用了子程序以后@i的值发生了变化:i=1 2 3 4 而j=b c。也就是说我们在子程序中对数组进行的push和shift操作在主程序中起了作用。为什么会出现这种情况呢?一般来说,我们在子程序中对变量进行了my声明,也就是只会在子程序中起作用,而不会改变主程序中的值。在这里由于引用的是真实的参数,也就是主程序中的值,而不是它的备份,所以会得到相应的改变。

推荐整理分享perl中子程序中参数的两种引用(传递)方式介绍(perl中\s+),希望有所帮助,仅作参考,欢迎阅读内容。

perl中子程序中参数的两种引用(传递)方式介绍(perl中\s+)

文章相关热门搜索词:perl终止程序,perl程序如何运行,perl中$_,perl中qw,perl fork子程序,perl fork子程序,perl 子程序数组参数,perl 子程序,内容如对您有帮助,希望把文章链接给更多的朋友!

perl 指定长度并生成一个随机的DNA序列的脚本代码 #!/bin/perlusestrict;usewarnings;#进行定义my@dna;my$dna_length;my$newbase;my$i=0;print"pleaseinputtheDNAlengthn";chomp($dna_length=);while($i$dna_length){#从四个碱基中随机选取一个my(@

perl生成特定碱基比例的随机序列的代码 方法一(不使用模块,byagonyr)#!/usr/bin/perl-wusestrict;my@seq=("A","T","C","G");my$length=;undefmy%hash;$hash{"A"}=int($length*0.3);$hash{"C"}=int($length*0.3);$hash{"G"}=int($length

求婚示爱的Perl代码之注释篇 原始代码代码出处:

本文链接地址:https://www.jiuchutong.com/biancheng/372539.html 转载请保留说明!
下一篇链接:https://www.jiuchutong.com/biancheng/372540.html
免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

鄂ICP备2023003026号

友情链接: 武汉网站建设 电脑维修 湖南楚通运网络