длинное шестнадцатеричное представление без знака
#include <stdio.h>
#include <string.h>
int main(void) {
char buf[256] = {};
unsigned long i=13835058055298940928;
snprintf(buf, 1024, "%lx", i); /* Line 7 */
printf("%s\n",buf);
return 0;
}
В строке 7, если я использую%lux
тогдаsnprintf
не делает никаких преобразований, а просто печатает0x13835058055298940928x
тогда как, если я использую только%lx
, он печатает ожидаемое шестнадцатеричное преобразование.
Как мне представить unsigned long в гексе?