You are not passing unsigned long longs
. You are passing an int
(0) and unsigned long
(ULONG_MAX). You must pass to printf()
exactly what you promise to pass in the format string.
Try this instead:
printf("unsigned long long int: \n%llu to %llu \n\n", 0ULL, (unsigned long long)ULONG_MAX);