'#if
条件付きコンパイル
条件に合った部分の処理だけをコンパイル対象とする。
使い方
code:c
//**********************************************************
// 構文
//条件式1が成立するの時に実行する処理 (ブロック1)
何らかの処理
// 条件式1が成立しないで条件2が成立する時の処理
何らかの処理
//条件式1も条件式2も成立しない時の処理 (ブロック3)
何らかの処理
//**********************************************************
//**********************************************************
//if 0と1を切り替えることで、実行するプログラムの切り替えが出来る。 コメントアウトの代わりにもなる。
//実行されない
//実行される
//実行される
//実行されない
//**********************************************************
code:c
#ifdef //条件コンパイル:プログラムの中で不要な部分をカットする事が出来る。 //if(もし) def(#define)が定義されていたら、実行する
//#define DEBUG_ON
int main(void)
{
printf("Hello"); //#define DBUG_ONが無いため、実行されない。
printf("World"); //実行される
return 0;
}
code:c
int main(void)
{
#ifdef DEBUG_ON //#define DBUG_ONがあるため、実行される。 printf("Hello");
printf("World");
return 0;
}
code:c
/*
#define usb Disabelで、実行しない。Enableで実行するを決定するプログラム */
#define usb0 Disable //usbをDisableに設定:実行しない #define usb1 Enable //usb1をEnableに設定:実行する。 int main(void){
// Your code here!
#if usb0 == Enable //usb0がEnableの場合実行する。 printf("usb0は、Enable\n");
#if usb1 == Enable //usb1がEnableの場合実行する。 printf("usb1は、Enable\n");
}
code:c
//#ifを使用して、処理を切り替えるプログラム
//#define ADRSIZE AD8
int main(void){
// Your code here!
#if ADRSIZE == AD9 //AD9を実行 printf("AD9がEnable\n");
#if ADRSIZE == AD8 //AD8を実行 printf("AD8がEnable\n");
}
code:c
int main(void){
// Your code here!
printf("AD9がEnable\n");
printf("AD8がEnable\n");
}