my $hex_str = "fffff00000000";
my $hex_val = hex($hex_str);
my $sum = $hex_val + 5;
$sum
私が期待されている場合 - 0xfffff00000005
Iは
my $hex_str = "ffffff00000000";
my $hex_val = hex($hex_str);
my $sum = $hex_val + 5;
コモド番組を持っている場合$sum
が0xffffff00000008
もし私がhavv電子
my $hex_str = "fffffff00000000";
my $hex_val = hex($hex_str);
my $sum = $hex_val + 5;
コモドは$sum
が0xfffffff00000000
Iは、第2及び第3のケースで予期しない値を取得し、なぜ誰かが私に説明できますか?
>perl -V:use64bitint
use64bitint='define';
>perl -V:ivsize
ivsize='8';
>perl -V:archname
archname='MSWin32-x64-multi-thread';
$ Config {ivsize} – ysth
これは8です。どういう意味ですか? – Mathai
これは整数に使用される実際のバイト数です。 use64bitintは信頼性が高くありません。 – ysth