Предупреждение компилятора о printf () long unsigned int и uint32_t

В моем коде C я fprintf с использованием «% lu» и указанием uint32_t для соответствующего поля. Но когда я компилирую с -Wall в GCC (версия 4.2.4), я получаю следующее предупреждение:

writeresults.c:16: warning: format '%4lu' expects type 'long unsigned int', but argument 2 has type 
`uint32_t'

Это не uint32_t и long unsigned int то же самое на 32-битных архитектурах? Можно ли избежать этого предупреждения без исключения переключателя компилятора -Wall или использования преобразования типов (и если да, то как)?

Да, я ' m по-прежнему использует 32-битный компьютер / Arch / OS / компилятор (на данный момент слишком плохо, чтобы позволить себе новое 64-битное HW). Спасибо!

5
задан pr1268 10 February 2011 в 18:28
поделиться