我想打一个ç宏if语句来替换。为指针C预处理器宏结构成员
我从来没有能够很好地掌握C宏,我是否需要做标记 粘贴?
#define BROWSER_HTML_HOW_OPENTAG 0x19939292
structure { dword how; } _tag;
structure { _tag cur_tag; } _ibot;
// works fine
foo()
{
_ibot*ibot;
if(ibot->cur_tag->how==BROWSER_HTML_HOW_OPENTAG) { } // do something
}
,但我想实现这个
#define browserTagCheck(tag,how) (tag->how==how)
foo()
{
_ibot*ibot;
if(browserTagCheck(ibot->cur_tag,BROWSER_HTML_HOW_OPENTAG) {} // do something
}
我得到一个错误:
error: expected identifier before numeric constant|
你已经离开了')'在'如果()'。另外,它的结构不是结构。 – moonshadow
这不是主要问题,但在你的'if'丢失的圆括号。 – Yamaneko
我们不得不认为这是伪代码,因为它不是有效的C代码。 – Lundin