在RedHat中用CC编译器可以定义如下宏:
#define RunLog(fmt,arg1...) { debugLog(__FILE__,__LINE__,fmt,##arg1); }
应用时,可以RunLog("%s,%d,%x", strvar, intvar, pvar);
只要把 RunLog定义为 空 就可以去掉这些调试信息。调试程序时非常方便。
但在ScoUnix下的CC就不行了。。。
俺只好做了如下定义:
#define DebugPRT(str) { debugLog(__FILE__,__LINE__,str); }
#define DebugPRT1(fmt,arg1) { debugLog(__FILE__,__LINE__,fmt,arg1);}
#define DebugPRT2(fmt,arg1,arg2) { debugLog(__FILE__,__LINE__,fmt,arg1,arg2);}
#define DebugPRT3(fmt,arg1,arg2,arg3) { debugLog(__FILE__,__LINE__,fmt,arg1,arg2,arg3);}
#define DebugPRT4(fmt,arg1,arg2,arg3,arg4) { debugLog(__FILE__,__LINE__,fmt,arg1,arg2,arg3,arg4);}
别笑我笨。:oops:
各位高人指点一下。Sco下的CC该如何定义支持可变参数的宏????
?
我在SCO 5。0。x上面做这样的程序是可以的啊
订阅:
博文评论 (Atom)
没有评论:
发表评论