- ベストアンサー
変数の定義について
perl中級者です。 とあるPGMの修正を頼まれて行っていたのですが、 変数の定義において print "$ABC{$DEF}\n" という記述がありました。 $ABC$DEF や $ABC[$DEF]、 $ABC${DEF} という記述は使用しますが、 $ABC{$DEF} のような記述ってあるのでしょうか? 前後の処理は関係無しにこのような表現があるのかどうかを教えてください。 また、その場合print等で表現すると、 どのような表示になるのでしょうか? perl:Ver4 開発環境:HP-UX 以上、よろしくお願いいたします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
現在は、ハッシュといわれていますが、かつては連想配列といわれていました。 これは、配列の添え字として文字をつかうことが、出来る特殊な配列です。 たとえば、 A君の年齢=16 住所=SHINJUKU B君の年齢=18 住所=SHIBUYA とすると ------------------ $nenrei{"A"} = 16; $nenrei{"B"} = 18; $jusho{"A"} = "SHINJUKU"; $jusho{"B"} = "SHIBUYA"; $name = "A"; #A君の名前 print "名前:$name"," 年齢:$nenrei{$name}"," 住所:$jusho{$name}","\n"; $name = "B"; #B君の名前 print "名前:$name"," 年齢:$nenrei{$name}"," 住所:$jusho{$name}","\n"; --------------------------- を実行すると 名前:A 年齢:16 住所:SHINJUKU 名前:B 年齢:18 住所:SHIBUYA となります。
その他の回答 (2)
- twinkleluz
- ベストアンサー率52% (98/185)
単純に中括弧を出力したいだけなのかもしれません。 その場合は、 print "$ABC\{$DEF\}\n"; ですが・・・
お礼
早速のご回答ありがとうございます。 どうやら連想配列のようです。 参考になりました、、、
- tessyu
- ベストアンサー率53% (59/110)
お礼
早速のご回答ありがとうございます。 どうやらそれっぽいです。 助かりました。
お礼
早速のご回答ありがとうございます。 連想配列で間違いないようです。 正直あまり使ったことのない記述ですので 頭にありませんでした。 助かりました。