Ho scritto un codice di prova molto semplice di printf uint64_t:
#include <inttypes.h>
#include <stdio.h>
int main()
{
uint64_t ui64 = 90;
printf("test uint64_t : %" PRIu64 "\n", ui64);
return 0;
}
Uso Ubuntu 11.10 (64 bit) e gcc versione 4.6.1 per compilarlo, ma fallito:
main.cpp: In function ‘int main()’:
main.cpp:9:30: error: expected ‘)’ before ‘PRIu64’
main.cpp:9:47: warning: spurious trailing ‘%’ in format [-Wformat]
-std=c11o la versione dello standard che si sta utilizzando. Questo cattura questo e altri errori. Raccomando anche -Wall -Wextra -Wpedantic -Wconversionalmeno.
main.ce lo compili con gcc, tutto dovrebbe funzionare bene.