亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何生成變量宏(變量數)

如何生成變量宏(變量數)

C C++
月關寶盒 2019-07-10 10:47:58
如何生成變量宏(變量數)我想用C寫一個宏,它接受任意數量的參數,而不是特定的數字。例子:#define macro( X )  something_complicated( whatever( X ) )哪里X是任意數量的參數我需要這個是因為whatever是重載的,可以用2或4個參數調用。我嘗試過兩次定義宏,但是第二個定義覆蓋了第一個!我正在使用的編譯器是g+(更確切地說,是mingw)。
查看完整描述

3 回答

?
紅顏莎娜

TA貢獻1842條經驗 獲得超13個贊

C99方式,也支持VC+編譯器。

#define FOO(fmt, ...) printf(fmt, ##__VA_ARGS__)


查看完整回答
反對 回復 2019-07-10
?
慕桂英4014372

TA貢獻1871條經驗 獲得超13個贊

__VA_ARGS__是做這件事的標準方法。如果沒有必要,不要使用特定于編譯器的黑客。

我真的很生氣,因為我不能對原來的帖子發表評論。無論如何,C+不是C的超集,用C+編譯器編譯C代碼真的很愚蠢。不要做唐尼不做的事。


查看完整回答
反對 回復 2019-07-10
?
holdtom

TA貢獻1805條經驗 獲得超10個贊

我不認為那是可能的,你可以用雙生父母來假裝.只要你不需要單獨的爭論。

#define macro(ARGS) some_complicated (whatever ARGS)// ...macro((a,b,c))macro((d,e))


查看完整回答
反對 回復 2019-07-10
  • 3 回答
  • 0 關注
  • 728 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號