這個想法是創建一個自動腳輪,它可以根據給定的前綴和數字粘貼指向變量的指針。假設你有一些不斷髮展的界面,所以你每隔幾周就會得到一些新的結構版本。所以,而不是寫明確性「(structure1 *),(structure2 *)」等等,你可以使用SOME_DEFINE(thisStructure,版本);這將處理的情況下如何在C預處理器中合併符號名稱和符號值
我認爲這會做的伎倆
#define d1(x) x
#define d2(x,y) x##y
void someFunction()
{
int temp = 3;
d2(myStructure,d1(temp)) *thisStruct;
}
我希望預處理將鳥巢本身和粘貼操作D1先合併與第一D2參數D1操作的結果。然而它不起作用,所以我的問題是,我怎麼能實現這個事業似乎是可能的。
這個問題還不清楚。你能舉例說明你真正想要的嗎?也許你可以消除預處理器的需要。 – iammilind
@ user1079475,爲什麼你需要d1預處理器? – Anon
@Anon:顯然這是一個人爲的例子。 –