<分区>
我可以使用什么 printf 格式说明符在 32/64 位和 Windows/POSIX 上以十六进制表示法打印 64 位无符号整数?我见过的最接近的是 %llX
但我不确定它是否足够便携。忽略旧编译器(例如 Visual Studio 2010)的答案是可以接受的。
<分区>
我可以使用什么 printf 格式说明符在 32/64 位和 Windows/POSIX 上以十六进制表示法打印 64 位无符号整数?我见过的最接近的是 %llX
但我不确定它是否足够便携。忽略旧编译器(例如 Visual Studio 2010)的答案是可以接受的。
最佳答案
PRIx64
<inttypes.h>
中的宏正是您要找的。p>
这是一个字符串标记,因此您可以将其用作:
fprintf(stdout, "answer = %"PRIx64"\n", val);
由于您指定了 %llX
, 你可能想要大写;使用:PRIX64
关于c - 64 位十六进制的可移植 printf 格式说明符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32745557/