4

プログラムに 3 つの引数を取る関数があります。コードには、これらのパラメーターのうち 2 つを定義するマクロが含まれている場合があります。

したがって、この:

void func(int x, int y, int z){...}

次のように呼び出すことができます。

#define PAR 10,20
int z = 3;
func(PAR, z);

ここで、関数が別の関数のマクロのように呼び出されるように、コードを変更する必要があります。

#define func(X,Y,Z) func2(X,Y,Z,#Z)

X と Y が実際に変数として渡される場合、これは正常に機能します。マクロ PAR でも動作させる方法はありますか?

GCC 4.6 を使用しています

4

2 に答える 2