【发布时间】:2022-01-08 11:45:46
【问题描述】:
我知道在使用printf 函数时,我可以用%o 表示整数的八进制值,用%x 表示它的十六进制值。
但是,如何将浮点值表示为八进制或十六进制?
当尝试使用相同的说明符时,Xcode 13.x 可以预见地抛出一个警告,告诉我我正在尝试使用带有浮点值的整数说明符。
我该如何解决这个问题?
谢谢
【问题讨论】:
-
如果您想以
%a打印十六进制数字的方式打印八进制 数字,您可以执行以下操作: 使用sprintf(..."%a"...)构建十六进制表示。171.75将导致AB.C。将每个十六进制数字转换为 4 个二进制数字:AB.C变为10101011.1100。删除或添加小数点前后的前导零,以便小数点前后的位数可以被 3 整除。将 3 个二进制数字转换为八进制。010101011.110变为253.6,这是171.75的八进制表示。 -
谢谢。我将如何在代码中执行此操作?你的程序是我会“手动”做的
标签: c hex printf octal conversion-specifier