[英]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.