こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

perlのマクロ演算子?について

AAA変数にBBB配列名を代入し,AAA変数に配列を入れてBBB配列を使いたいのですが....どのようにするのでしょうか?

$count = 1
$AAA = "@BBB_no".$count;
※$AAA = ("ア","イ","ウ","エ");

↑ここの※の部分に何か加えるのでしょうか?


投稿日時 - 1999-12-24 13:46:00

QNo.603

暇なときに回答ください

このQ&Aは役に立ちましたか?

12人が「このQ&Aが役に立った」と投票しています

回答(1)

ANo.1

マクロ演算子ってなんだろうとおもったのですが、
たぶん、ハードリファレンスのことを指していると思いますので
ハードリファレンスについて書きます。

$変数 = '配列の名前';

を登録して、そのあと
$$変数[0]; #ドルドル変数

などでアクセスできます。

同様にhash(連想配列)も
$変数の名前 = hashの名前;

$$変数{'名前'};

でアクセスできます。

リファレンスについては、青らくだを参考にするとよいと思います。


---------------簡単な例----------------------
#!/usr/local/bin/perl
#2000/01/27 (c) Copyright ichigo 2000. All rights reserved.

@BBB_1 = ('ア','イ','ウ','エ'); #myはつけない

my $count = 1;

$AAA = 'BBB_'.$count;

my($i);
for($i=0; $i<@BBB_1; $i++){
print $$AAA[$i]."\n";

}

参考URL:O'Reillyの青らくだ

投稿日時 - 2000-01-27 15:48:21