[英]How to print space in uint64_t (C)
当我尝试这个:
#include <stdio.h>
#include <inttypes.h>
int main (int argc, char **argv)
{
uint64_t key = 0xf0000000ffffffff;
printf ("key=%" PRIx64, key, "\t\n %" PRIx64, "\n", key);
}
打印key=f0000000ffffffff
; 所有空格都将被删除。 如何打印? 我正在使用gcc (Ubuntu/Linaro 4.7.3-1ubuntu1) 4.7.3
。
您提供给printf
的格式字符串仅
"key=%" PRIx64
其余所有参数都是格式字符串的参数,因为格式字符串仅包含一个转换说明符,所以第一个参数将被打印,其余参数将被丢弃。
我想你想要
printf("key=%" PRIx64 "\t\n %" PRIx64 "\n", key, key);
请注意格式字符串中缺少逗号。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.