1
Visual Studio 2015を使用して、32ビットプラットフォームと64ビットプラットフォームでプロジェクトをビルドしています。フォーマット指定子32ビット - 64ビット
Sizeofは、32ビットプラットフォームでは符号なし整数を返し、64ビットプラットフォームでは符号なし__int64を返します。
printf ("limit is %u. \n",sizeof(var));
が、私は両方のプラットフォームで同じコードをコンパイルする必要があります。
は、私は、次のコードを持っています。書式指定子%uを使用すると64ビットで警告が表示され、%I64uを使用すると32ビットで警告が表示されます。 printfを2回書くことなく(ifdef _WIN32で)両方のプラットフォームでformatspecifierを使う方法はありますか?私は私のプロジェクトでこれらの警告をたくさん持っています。これは多くの仕事であり、「きれいに」見えません。