Hex 轉整數程式

這是 Hex 轉整數程式片段。輸入 FF,複製 C、C++、C#、Python、JavaScript、Java、Go、Rust、PHP、AWK 的解析/格式化程式。int("FF", 16) 是 255。JS 的 parseInt 只安全到 2^53−1,更大要用 BigInt。

示例,點色塊填入

點一下即可複製

這些片段是什麼

這是 Hex 轉整數的程式盒,不是轉換器。Python int("FF", 16) 是 255。JavaScript parseInt 在超過 2^53−1 後會丟精度,要用 BigInt("0x…")。Java 的 Integer.parseInt 會把 0xFFFFFFFF 讀成 −1,parseUnsignedInt 才是 4294967295。只做數值換算請用 HEX 轉十進位;有符號位型用 二的補數。

如何使用

填 hex(FF)或十進位(255)。位元寬度 Auto / 8 / 16 / 32 / 64 會補齊 hex 並選型別。示例:0xFF、0xDEAD、0xFFFFFFFF、255、0xCAFEBABE。卡片上的複製拷該語言;複製結果拷 hex。識別字故意不翻譯。

各語言的坑

radix 一定要寫 16。Python int("0xFF", 0) 認前綴,int("FF", 0) 會報錯。AWK 需要 gawk。PHP hexdec() 裝不下時變成 float。超出所選寬度會報錯。

用在哪裡

貼進 gist、教材,或提醒別人 parseInt(hex) 沒寫 radix。

常見問題

Java 為什麼用無符號?

parseInt 是有符號 32 位元。bit31 置位要用 parseUnsignedInt 或 Long。

JS 為什麼用 BigInt?

Number 不能表示 2^53−1 以上的每一個整數。parseInt 會捨入。