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