我們使用#把巨集引數變為一個字串,用##把兩個巨集引數貼合在一起.
將傳入的參數名稱變化
假設你想要把傳入參數名稱再變化,用 ## 穿插其中:
#define print_three_num(num)
do {
print_num(num);
print_num(num##2);
print_num(num##3);
} while (0)
因為不能用 num2 來表示 num+ "2",所以你必須用 ##。當你傳入 print_three_num(name) 時,他會展開成:
print_num(name);
print_num(name2);
print_num(name3);
沒有留言:
張貼留言