K.Maebashi's BBS 投稿フォーム
ハンドル名
件名
Link
>>Perlのようなインタプリタ型の言語は、なぜエラーにならないのでしょうか? > >インタプリタだから、ではなくて、perlの言語仕様的な問題です。 > >perlの場合、関数の引数は全て配列(@_)として扱われます。なので、この場合は、 >一つ目の%sには$_[0]が、二つ目の%sには$_[1]が、三つ目の%sには$_[2]が入ります。 > >このとき、Cあたりだと配列長を超えたらそのままバッファオーバーラン、Javaだと >例外が投げられますが、perlの場合は読むときはundefが返り、書くときは自動で >配列長が拡大されます。 > >今回の場合は、$_[2]を読もうとして返ってきたundefが文字列化されて空文字列 >扱いになったわけです。
spamよけのため、ここに「ほげぴよ」と入力してください。
削除パスワード :
クリック!