1. 程式人生 > 其它 >C/C++程式設計:printf十六進位制輸出64位

C/C++程式設計:printf十六進位制輸出64位

技術標籤:# C++

#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>
#include <inttypes.h>

int main()
{
    uint64_t num = 9223354444668731392;
    printf("%lu\n", num); //十進位制輸出
    printf("0x%"PRIx64"\n", num); //十六進位制輸出
printf("0x%016lx\n", num); //十六進位制輸出: 0表示空餘的位用零填充,16表示顯示16位數字(格式化的字元數寬度),I64表示64位int值(I32表示32位int值,i必須大寫), x表示十六進位制形式顯示 char *flags = "0x0000000000000000"; uint64_t debug_flags = strtoull(flags, NULL, 0); printf("Debug flags set to '0x%" PRIX64 "'.\n", debug_flags)
; char *flags1 = "0x000000000001239"; uint64_t debug_flags1 = strtoull(flags1, NULL, 0); printf("Debug flags set to '0x%" PRIX64 "'.\n", debug_flags1); printf("Debug flags set to '0x%016lx'.\n", debug_flags1); }

在這裡插入圖片描述