のシーケンスについて
typedef int64_t I64;
I64 i=5;
printf("%"PRIi64",i);
cppcheck は以下の警告を出します:
警告: フォーマット文字列 (1 番目) の %lld には 'long long' が必要ですが、引数の型は 'signed int' です。
マクロ PRIi64 は lld によって解決されます。これは正しいですが、64 ビット整数型は long long int として受け入れられません。
これを解決する方法があることを願っています。私たちのプロジェクトではこのような警告がたくさん出ており、実際のバグはもう見られないからです。