16進数から10進数の変換
Posted feedbacks - PHP
PHP 5.1.6 hexdec()ではinteger型の範囲をこえる数値は、float型で返すみたいなので、 gmp_strval()を使いました。
see: PHP Manual - hexdec
1 2 3 4 5 6 7 8 9 10 11 | // hexdec() ※うまくいかない
$ php -r 'echo hexdec($argv[1]),"\n";' 0x12437308CCB6
20080902065334
$ php -r 'echo hexdec($argv[1]),"\n";' 0x2C9C1227FC6520B
2.0090401231145E+17
// gmp_strval()
$ php -r 'echo gmp_strval($argv[1]),"\n";' 0x12437308CCB6
20080902065334
$ php -r 'echo gmp_strval($argv[1]),"\n";' 0x2C9C1227FC6520B
200904012311450123
|


shojiHIDAKA #8955() Rating1/1=1.00
16進数を10進数に変換してください。
ただし、入出力は文字列とし、次の変換は最低必ずできなければいけないこととします。
2.0x2C9C1227FC6520B →200904012311450123
あわせて、扱える最大の整数も明らかにしてください。
[ reply ]