• 締切済み

ソースの詳細を教えてください。

こんにちは。 干支の算出プログラムで以下の文章を見つけたのですが、 詳細を教えてください。 print getEto($year02), "\n"; #------------------------------------------ #干支を取得する #------------------------------------------ sub getEto{ my $year = shift; my @label = ('申','酉','戌','亥','子','丑','寅','卯','辰','巳','午','未'); return( $label[$year % 12] ); } コード終わり。 my $year = shift; とはどういう働きをするのでしょうか? return( $label[$year % 12] );の意味も教えていただきたいです。 よろしくお願いします。

みんなの回答

  • 15mm
  • ベストアンサー率65% (65/100)
回答No.1

my $year = shift; $yearにサブルーチンの引数の一つ目を代入(shift @_) getEto($year02)とあるので、my $year=$year02という処理が行われる。 return( $label[$year % 12] ); getEtoの戻り値として、$label[$year % 12]を返す。 $label[$year % 12] @label配列の $year % 12 番目を参照 $year % 12 引数として入ってきた年数の数字を12で割ったときの余り 干支は12あるので12で割る

xphp
質問者

お礼

ありがとうございました。

関連するQ&A