是什么在一个数组,散列的引用的十六进制数,等等。说明什么?

当打印到一个数组,哈希等的参考,是什么,括号内的十六进制数?

perl -e 'print []'

给喜欢的输出:ARRAY(0x9acb830)

究竟是什么0x9acb830? 如果我再打印相同的裁判,这个数字发生变化。

--------------解决方案-------------

如果您打印相同的裁判再次数量应保持不变; 的数量是对SV标题为称为啄的实际地址。

它基本上阵列的存储器位置。 Perl是试图让你知道你想打印一个参考,而不是一个标量值。

尝试这个:

#! /usr/bin/env perl
use strict;
use warnings;

my @foo = qw(one two three four five);
print @foo . "\n"; #Prints the array in a scalar context (five items)
print \@foo . "\n";
print $foo[1] . "\n";
print \$foo[1] . "\n";

5
two
SCALAR(0x100804ff0)
ARRAY(0x10082ae48)

请注意,当我打印的引用,Perl的尝试正确的事。 相反,试图打印一些奇怪的值,它会告诉你你想打印一个标量或数组引用。

分类:perl的 时间:2015-03-15 人气:2
本文关键词: Perl中,REF
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 1.142 (s). 10 q(s)