• ベストアンサー

配列変数に格納の仕方

出力結果を 20,5 にしたくて、 $date = 20; @job_no = (5,3,5); @table = "$date,$job_no[1]"; print "@table\n"; と考えたのですが表示されませんでした。 ご指摘をおねがいします。

質問者が選んだベストアンサー

  • ベストアンサー
  • yuizuian
  • ベストアンサー率42% (103/245)
回答No.1

@table = "$date,$job_no[1]"; は配列に格納する方法として間違っていると思うのですが… @table = "$date,$job_no[1]"; print "@table\n"; の部分を $table = "$date,$job_no[1]"; print "$table\n"; とするか @table = ("$date,$job_no[1]"); print "@table\n"; としてください。

その他の回答 (2)

回答No.3

@table配列に一応格納はできていると思うのですが、 表示されないというのは、おかしいですね。 エラーは出ていますでしょうか? 多分、20,3と表示されると思いますが・・・ 20,5と表示させたいようですが、 その場合は、[]の中は、1では無く、0か2でしょう。 @test = ("あ","い","う");とした場合、 $test[0] → あ $test[1] → い $test[2] → う となります。

noname#1692
noname#1692
回答No.2

ちなみに、、、 $job_no[1]だと「3」が入ってしまうので。 「5」を代入したいのであれば$job_no[0]もしくは$job_no[2]ですね。 とりあえず一例。 table[0]に「20」 table[1]に「5」(= job_no[0]) と代入したいのであれば @table = ($date, $job_no[0]); です。 これをカンマ区切りで表示する時は print join(",", @table); 普通に「20,5」と表示するだけでしたら配列tableを使わなくても、下の方の回答で十分だと思います。

関連するQ&A