我正在尝试以下代码。它以十六进制输出 a,以十进制输出 sa。 我不知道如何将 a 的值“大写”为“F”。
#include <stdio.h>
Void foo()
{
int a = 10;
static int sa = 10;
a += 5;
sa += 5;
printf("a = %x, sa = %d\n", a, sa);
}
int main()
{
int i;
for (i = 0; i < 10; ++i)
foo();
}
要将整数转换为大写的十六进制格式,请使用
%X
。请注意,0x
的非零值的 %#x
前缀输出也将用 %#X
大写
同样,您可以使用
%E
、%F
、%G
和 %A
将浮点数转换为大写字母而不是小写字母。
C23 添加了带有
%b
的二进制转换,如果与 #
修饰符一起使用,printf
会输出非零值的 0b
前缀。 %#B
可用于生成 0B
前缀。