アプリ版:「スタンプのみでお礼する」機能のリリースについて

Perlでよく ハッシュをprintした場合、
HASH(0x2241be4)と表示されますが、

こちらがハッシュを意識しなくてもだいたいの構造が
わかるように整形・表示して、具体的な中身を
表示させたいのですが可能でしょうか?

A 回答 (2件)

# Data::Dumperなどはどうでしょう?


use Data::Dumper;
my $foo = { a=>'A', b=>[ 1,2,3 ] };
print Dumper( $foo );
    • good
    • 0

それはハッシュのリファレンス(参照アドレス)です。


print $hash;みたいな形で出力していませんか?

my %hash;
と定義されたハッシュ自体を出力するだけなら、

print %hash

とすると、キーと値が順番に連結された状態で出力できます。

別々に分けるなら、each関数を使って

while(($key,$value) = each %hash){
print "$key => $value\n";
}

としてあげればOKです。

変数がリファレンスだった場合、ref関数でどの型のリファレンスかがわかりますので、型別に分岐処理をすればいいです。

参考URLの「ハッシュ」「リファレンス」の項が参考になると思います。

参考URL:http://www.rfs.jp/sb/perl/index.html
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!