一组有利于编码和调试的宏

#define smSTR2(x) #x
#define smSTR(x) smSTR2(x)
//该宏用于编译时提示哪里还没有完成,双击提示可以直接转到相关位置
#define smMSG(desc) message(__FILE__ "(" smSTR(__LINE__) "):" #desc "/n") 
 
#ifdef _DEBUG
//该组宏用于调试时候输出一个变量名以及该值,点击提示可以直接转到相关位置
#define smTRACE(value,type) TRACE1(__FILE__"(%d):" #value "/n",__LINE__);/
      TRACE2(__FUNCTION__" %s=%" #type "/n",#value, value)
 
#define smTRACEint(value)    TRACE1(__FILE__"(%d):" #value "/n",__LINE__);/
      TRACE2(__FUNCTION__" %s=%d/n",#value, value)
#define smTRACEfloat(value) TRACE1(__FILE__"(%d):" #value "/n",__LINE__);/
   TRACE2(__FUNCTION__" %s=%f/n",#value, value)
#define smTRACEpoint(value) TRACE1(__FILE__"(%d):" #value "/n",__LINE__);/
   TRACE2(__FUNCTION__" %s=%p",#value, value)
 
#define smTRACEchar(value)  TRACE1(__FILE__"(%d):" #value "/n",__LINE__);/
      TRACE2(__FUNCTION__" %s=%c/n",#value, value)
 
#define smTRACEstr(value)    TRACE1(__FILE__"(%d):" #value "/n",__LINE__);/
      TRACE2(__FUNCTION__" %s=%s/n",#value, value)
#else
#define smTRACE(value,type)
#define smTRACEint(value)
#define smTRACEfloat(value)
#define smTRACEpoint(value)
#define smTRACEchar(value)
#define smTRACEstr(value)
#endif
 
 
int main()
{     
#pragma smMSG(main)
   int i=10;
   float f=1.234;
   char ch='C';
   char str[]="I love you CC";
 
   smTRACE(i,d);
   smTRACEint(i);
   smTRACEfloat(f);
   smTRACEchar(ch);
   smTRACEstr(str);
   smTRACEpoint(&i);
   return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值