使用for循环将函数的数值结果插入perl数组

时间:2013-05-11 22:15:17

标签: arrays perl

我是perl的新手,我想做类似于我在C中做的事情。

for(i=0;i<32;i++)
{
array[i]= some_function_result();
}
and then print the array

并且为此,我在perl中尝试做的是

@data=();
for($i=0;$i<32;$i++){   
    $hexval = unpack('H2',substr($payload,$i,1));
        @data[$i]=$hexval;
}
print @data;

这是对的吗? 我试图使用像push(@ data,$ hexval)这样的函数,但结果是

  

32

     

64

     

96 ...

我知道这很天真..但有人可以帮我解决这个问题..

1 个答案:

答案 0 :(得分:1)

int i;
for (i=0; i<32; i++) {
   array[i]= some_function_result();
}

for (my $i=0; $i<32; $i++) {
   $array[$i] = some_function_result();
}

或更好

for my $i (0..31) {
   $array[$i] = some_function_result();
}

流程控制语句记录在perlsyn

perldata中记录了变量类型。

(可使用perldoc perlsynman perlsyn访问。)

您确实应该始终使用use strict; use warnings;

相关问题