Perlと私は、変数が数値かどうかに関して意見が異なります。私は間違っている、もちろん、なぜですか?Perl数値変数
my $bytes = 0;
# . . .
$bytes = $bytes + length($text);
# . . .
my $MB = $bytes/1048576;
my $string = sprintf("Downloaded: %.1f MB\n", MB);
は、Argument "MB" isn't numeric in sprintf at foo.pl line 200.
となります。
私はDownloaded: 3.09680080413818 MB
に文字列を設定します
my $string = "Downloaded: $MB MB\n";
を使用するときには、実際には、などの数値を見ることができています。
編集:ああ、愚かな間違い、それをキャッチするためにありがとう。
@Woobleが指摘しているように、将来は 'use strict;'でこれらのいくつかを捕まえることができます( 'warnings 'を使うべきです)。 –
@Platinum Azure:もちろん。私はいつもそれらを使用することを_intend_ ...ヘッドアップのおかげで。 – Charles