c - 64 位十六进制的可移植 printf 格式说明符?

标签 c printf

<分区>

我可以使用什么 printf 格式说明符在 32/64 位和 Windows/POSIX 上以十六进制表示法打印 64 位无符号整数?我见过的最接近的是 %llX 但我不确定它是否足够便携。忽略旧编译器(例如 Visual Studio 2010)的答案是可以接受的。

最佳答案

PRIx64 <inttypes.h> 中的宏正是您要找的。

这是一个字符串标记,因此您可以将其用作: fprintf(stdout, "answer = %"PRIx64"\n", val);

由于您指定了 %llX , 你可能想要大写;使用:PRIX64

关于c - 64 位十六进制的可移植 printf 格式说明符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32745557/

相关文章:

c - 没有重复数字的随机数组

c - valgrind检测内存泄漏,找不到C

java - JNI 缓存的 jclass 全局引用变量被垃圾收集?

c - 为什么 GCC 不优化对 printf 的调用?

c - Printf 的参数

c - 为什么这篇文章会上线?

c - 为什么即使使用 fprintf 将输入传递给文件指针,输入也没有写入文件?

c++ - 如何访问位图中的像素颜色?

C 矩阵字符未正确显示打印

c - sprintf 组合字符数组