Some implementations seem to have trouble with %llu and formatting perhaps other "large" types -- e.g. Microsoft Windows using the standard CRT. For this reason also consider using the <inttypes.h> header if it is possible. The following should work in any compliant compiler including in MS-Windows
Code:#include <stdio.h> #include <inttypes.h> int main(void) { uint64_t i = 18446744073709551615ul; printf("Formatted data: %" PRIu64 "\n", i ); if (i&1) printf("is odd"); return 0; }