标签: perl
我必须将十进制值转换为十六进制。在我的代码中我使用
$hex = sprintf("0x%X", $temp);
但是这里遇到的问题是如果小数值是35,那么我得到的十六进制值为0x23。但是将输出值设为0x023。有没有办法实现这个目标?
35
0x23
0x023
答案 0 :(得分:4)
您无需添加0x部分,也可以使用零来证明:
0x
sprintf "%#05x", 35; # 0x023
文档here.请注意,要证明的“零的数量”是5,而不是人们想象的那样。