[英]Converting HEX to DEC is out of range by using `mawk`
當十六進制數相對較小時,我可以使用echo 0xFF| mawk '{ printf "%d\n", $1}'
echo 0xFF| mawk '{ printf "%d\n", $1}'
將十六進制轉換為十進制。
當十六進制數很大時,mawk 不再起作用,比如echo 0x8110D248 | mawk '{ printf "%d\n", $1}'
echo 0x8110D248 | mawk '{ printf "%d\n", $1}'
輸出2147483647
(相當於 0x7FFFFFFF)。
如果您只需要將十六進制轉換為十進制,我想知道您為什么使用mawk
。 你不能做類似的事情嗎
echo 'ibase=16;8110D248' |bc
(這輸出2165363272
)。
bash
也可以這樣做(以及 zsh 和 pdksh):
echo $(( 0x8110D248 ))
Output:
2165363272
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.