Этот код:
#define __STDC_FORMAT_MACROS
#include
#include
#include
#include
int main(int argc,char **argv)
{
uint64_t val=1234567890;
printf("%"PRId64"\n",val);
exit(0);
}
Работает для C99 , C++03 , C++11 в соответствии с GCC 4.5 , но не работает в C++11 в соответствии с GCC 4.7.1 . Добавление пробела перед PRId64
позволяет GCC 4.7.1 скомпилировать его.
Который правильный?