В моем коде 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). Спасибо!