C++ソースをCでコンパイルする

単純なC++ソースがCコンパイラでコンパイルできない時があります。

多くの場合、定数定義や型宣言の違いが原因の時があります。
つまり、論理型はC言語ではboolean型ですが、C++ではbool型。
論理値もCではTRUE、Falseですが、C++ではtrue、falseです。

そこで、次のinclude文をC++ソースに追加追加してCでコンパイルするとコンパイルが通る場合があります。
#ifndef bool /* bool が定義されていなかったら */
#define bool boolean
#endif

#ifndef true /* true が定義されていなかったら */
#define true TRUE
#endif

#ifndef false /* false が定義されていなかったら */
#define false FALSE
#endif

カテゴリー: C タグ: , パーマリンク