rsdb.net
当前位置:首页 >> pErl为什么数组名不能是变量 >>

pErl为什么数组名不能是变量

你这样的命名本来就是错的... 去掉 strict, 你就不会发现这样的命名是不对的, 往後的处理也将是错的. ( 如果结果还是对的, 那只是你走运而已 ) 想像一下 my @array = ( 1..10 ); my $array[1] = 10; @array = (); print @array; 你还能理解 $arr...

1. @{....}[...] 先不论这里有没有写错, 但这种表达方式, 以 @ 开头, 头面有 [ ] , 我们叫 array slice 是应该放在等号右手边的 @arr0 = (0..10)@arr1 = @arr0[1..2]; # @arr1 = 1, 2$x = [ 1..10 ];@y = @{$x}[1,2]; # @y = 1, 2这里你放到了左...

你可以用hash,将名字作为键,指向一个数组,例如: perl -le ' $hash{"test"}[0]=1 ; $hash{"test"}[1]=100 ; print "@{$hash{\"test\"}}" ; '

当然可以了试试不就知道了

$str = 'my name'; $strstr='your name'; echo "${str}str is hello"; //my namestr is hello echo "$strstr is hello"; //your name is hello echo "$strabc is hello"; // Undefined variable: strabc in {}的作用是限制变量名

#! /usr/bin/perl use strict; use warnings; my @array = (0 .. 9); my $tmp = 10; print "@array\n"; push(@array,$tmp); print "@array\n"; @array = $tmp + 1; print "@array\n"; ------------------------------------------------- 输出:...

perl使用变量是不需要声明的,所以不存在变量是否存在的问题,只要你在代码里用到了这个变量,它就存在,默认值是undef, defined 是判断变量是否赋值了,即是不是undef,如果想判断哈希中的键值是否存在,可以使用exists $hash{$a},就是判断是...

如果你有 use strict; 或 use 5.014 ( 或更新 ) , 你就需要在使用变量前写上 my $var; # 或 %hash 或 @array our $var; # 或 %hash 或 @array my ( $var, @array, %hash ) ; 否则会 die() 而如果你有 use Warnings, 或在 shebang line 加入 -w ...

你是简单问题复杂化。 这条命令压根不需要转义。 system("netstat -na | grep -i $port");

很怀疑你是打错字母了 $pattern = 'abcd';$line = 'abcdefg';if($line=~m/$pattern/){ print $line; }

网站首页 | 网站地图
All rights reserved Powered by www.rsdb.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com