Perl   发布时间:2022-04-07  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了与perl中的变量混淆大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
如果使用use Strict并使用警告和
如果我指定我的数据类型,它的工作原理;如果我没有指定我说它错误.
use Strict;
use warnings;
my $test=10;
my @arr=(10,20,30);

如果我将数组变量名称声明为数字:

use Strict;
 use warnings;
 my @100=(10,30);

然后,当我运行该程序时,它说错误:

Can't use global @100 in "my" at number_sclar.pl line 28,near "my @100"

如果我删除了我的并运行该程序,它运行没有错误.

所以请任何人都能告诉我为什么我的变量不支持数值数组变量名称?

解决方法

作为创造1美元,2美元,3美元,100美元等的无意识的副作用(以保持正则表达式捕获的结果); @ 1,@ 2,@ 3,@ 100等也会被创建.

但是,除了包变量之外,perlvar中的这些和大多数特殊变量的名称都不是合法的名称.例如,你不能做我的$(;或sub(;尽管然$(是包变量[1]的有效名称).

当词汇被添加到5.6中的Perl时,肯定会被认为是混淆允许这些名称用于用户变量.事实上,我怀疑有人甚至没有接受这个想法.

除了Sigil之外,词汇变量必须以[a-zA-Z _] [2]中的一个字符开头,然后可以在[a-zA-Z0-9 _] [2]中跟随一些字符.因此,@ 100不是词法变量的有效名称.

笔记:

>

>perl -e"our $(;"

>perl -e"my $(;"
Can't use global $( in "my" at -e line 1,near "my $("
Execution of -e aborted due to compilation errors.

>perl -e"sub (;"
Prototype not terminated at -e line 1.

>实际上允许更多的代码点,但它们不属于ASCII的字符集.为简单起见,我只列出了属于ASCII字符集的代码点.

大佬总结

以上是大佬教程为你收集整理的与perl中的变量混淆全部内容,希望文章能够帮你解决与perl中的变量混淆所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。