读书人

关于c中变参函数的有关问题宏怎么定

发布时间: 2012-08-02 11:35:25 作者: rapoo

关于c中变参函数的问题,宏如何定义它啊
各位大大 ,俺先拜拜。。。求教鸟

有个函数 void trace(char * A,...);
跟printf差不多。。
我现在要用另一个宏来代替他。。。 或者说用函数代替他 也行
kal_prompt_trace(int MOD,char*A,...);
第一个参数 是定值。。。这个函数意思是 把打印的东西在该模块下输出。。 MOD值得就是这个模块 后面俩参数跟printf差不多 。

现在 要让 kal_prompt_trace代替 trace函数。

我的#define trace(arg) kal_prompt_trace(MOD,#arg)
然后把原来的trace函数删掉

大概就是这个意思。。。 我这么写可以不 变参不知道怎么弄啊啊



[解决办法]
http://wenku.baidu.com/view/c56fd5ff910ef12d2af9e7ea.html
[解决办法]
C陷阱和缺陷附录有说
[解决办法]
#define trace(arg,...) kal_prompt_trace(arg,__VA_ARGS__)
如果是C++
#define trace(arg,...) kal_prompt_trace(arg,##__VA_ARGS__)

读书人网 >C语言

热点推荐