条件に応じて、必要な部分だけ抜き出してコンパイルしたい場合、次のように書きます。
#if 条件 指定範囲 #endif
#ifdef 識別子 指定範囲 #endif
#ifndef 識別子 指定範囲 #endif
また、複数の条件を判断することもできます。
#ifdef 識別子 範囲指定A //指定範囲Aをコンパイルする #elsif 条件B 範囲指定B //指定範囲Bをコンパイルする #else 範囲指定C //指定範囲Cをコンパイルする #endif
複数のプログラムファイル内でヘッダファイルを使うと、同じヘッダファイルを重複インクルードしてしまう場合があります。
これを防ぐためには次のように書きます。
#ifndef _MYHEADER_ #define _MYHEADER_ //2回目以降は既に呼ばれているので、この内容は読み込まれない void MyFunc(); extern int x; #endif