使用Bash 5.0.17(1(-发布
执行:
LC_NUMERIC=C printf '%an' 0.0
输出:
0x0p+0
测试多个值:
for v in 1.0 2.0 42.0 3.141592653589793
do LC_NUMERIC=C printf '%-20s %an' "$v" "$v"
done
输出为:
1.0 0x8p-3
2.0 0x8p-2
42.0 0xa.8p+2
3.141592653589793 0xc.90fdaa22168bde9p-2
这个%a
格式说明符是什么,我在网上找不到用man bash
或help printf
记录的?
这个
%a
格式说明符是什么,我找不到用man bash
或help printf
记录的,或者在网上搜索?
它提供与C标准库的printf()
函数使用的相同格式说明符相同的函数。具体来说,它打印浮点数的十六进制表示。