Last Update 2012/07/05
ソースファイル中のテキストを指定したもので置換します。
記述方法は引数の有無で下記のようになります。
記述方法は引数の有無で下記のようになります。
#define 名前1 値1
名前1
置換の対象となる文字列
値1
名前1の部分に置換されるテキスト
#define 名前1 ( 名前2 , ...) 値1
名前1
置換の対象となる文字列
名前2
引数として実際の置換時に任意指定可能な値の名前
値1の中に記述して使用する
コンマで区切る事により複数記述可能
コンマで区切る事により複数記述可能
値1
名前1の部分に置換されるテキスト
名前2の引数に該当する文字をテキスト中に入れた場合は、置換時の引数で置き換えられる
名前2の引数に該当する文字をテキスト中に入れた場合は、置換時の引数で置き換えられる
(例)
#include <stdio.h>
#define TEST1 printf("テスト1\n")
#define TEST2 printf("テスト2\n")
#define TEST3(a) printf(a)
#define TEST4 bbb\n
#define TEST5 "ccc\n"
#define TEST5TEST5 "ddd\n"
int main ()
{
TEST1;
TEST2;
TEST3("aaa\n"); /* 引数を利用 */
printf("TEST4\n"); /* 引用符に囲まれた部分は置換されない */
printf(TEST5);
printf(TEST5TEST5); /* 名前は部分一致するTEST5では置換されない */
/* 変数名などと同様の形式 */
return 0;
}
実行結果
テスト1
テスト2
aaa
TEST4
ccc
ddd