десятичное в шестнадцатеричное преобразование в C - PullRequest
0 голосов
/ 18 сентября 2011

Мне нужно преобразовать десятичные числа в четырехзначные шестнадцатеричные числа в нижнем регистре с префиксом 0x .
"% X" достаточно, но это не совсем то, что я хочу.

printf("hex num is: %X\n", num);

Ответы [ 3 ]

6 голосов
/ 18 сентября 2011

Полагаю, вам нужно либо 0x%04x, либо %#06x.

%x означает гекс в нижнем регистре. 0 означает заполнение нулями, если оно короче указанного числа цифр. 4 или 6 указывает желаемую ширину. # означает 0x префикс.

0 голосов
/ 18 сентября 2011

Является ли printf("hex num is : 0x%.4x\n", num); тем, что вы хотите?

0 голосов
/ 18 сентября 2011

Использование printf("hex num is : 0x%x\n", num);.

...