Re: [問題] 兩個井字號##有什麼用?

看板C_and_CPP (C/C++)作者 (頭腦好鈍 唉)時間19年前 (2005/12/01 12:47), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
※ 引述《miewQ (ICQ)》之銘言: : #define IPT_MATCH_ITERATE(e, fn, args...) \ : ({ \ : unsigned int __i; \ : int __ret = 0; \ : struct ipt_entry_match *__match; \ : \ : for (__i = sizeof(struct ipt_entry); \ : __i < (e)->target_offset; \ : __i += __match->u.match_size) { \ : __match = (void *)(e) + __i; \ : \ : __ret = fn(__match , ## args); \ : if (__ret != 0) \ : break; \ : } \ : __ret; \ : }) : 第十二行__ret = fn(__match , ## args); ,那兩個井字號 ## 有什麼效果? : 感謝板上強者撥空解答。 ## : Token-Pasting Operator (or merging operator) ex: #include <cstdio> #define paster( n ) printf( "%d", hello##n ) int helloworld = 100; int main(int argc, char *argv[]) { paster(world); //印出100 return 0; } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.123.103.102
文章代碼(AID): #13Ze1raP (C_and_CPP)
文章代碼(AID): #13Ze1raP (C_and_CPP)