2010-12-27 8 views
1

AIXシステムでIBM xlCコンパイラーを使用してサンプルのC++ファイルtest.cppをコンパイルしようとしています。ファイルは、32ビットモードと64ビットモードの両方でコンパイルする必要があります。私は両方のモードでそれらをコンパイルするには、次のコマンドを使用しています:32ビットおよびprintf("Using 64-bit compiler")用にコンパイル場合test.cppの下IBM XL C/C++コンパイラー:プリプロセッサー・ディレクティブを使用してコンパイル・モードを確認してください。

xlC test.cpp(デフォルトのコンパイラモードは32ビットである)

xlC -q64 test.cpp

を、私はprintf("Using 32-bit compiler")に持っています64ビット用にコンパイルする場合

どのようにプリプロセッサの条件を使用してこれを達成できますか?コンパイラまたはその違いを示すマシンアーキテクチャ用に事前定義されたマクロがありますか?

答えて

2

XLCで、-q64フラグを使用している場合、マクロ__64BIT__が定義されています。ストレートIBM XL C/C++'s documentationから

コンパイラが64ビットモードで起動された場合、__64BIT__プリプロセッサマクロが定義されています。

+0

ありがとうございました。 '__64BIT__'は私のコンパイラによって#定義されています。 –

関連する問題