borland吧 关注:60贴子:163
  • 2回复贴,共1

borland c++3.1在debug的时候有没有_DEBUG这个宏定义?

只看楼主收藏回复

#include <stdio.h>
#ifdef _DEBUG
#define sdbgprintf printf
#else
#define sdbgprintf /\
/sdbprintf
#endif
void main()
{
int a=1, b=2;
sdbgprintf("a=%d,b=%d\n", a, b);
printf("c=a+b=%d+%d=%d", a, b, a + b)
}
这段代码在VS2013调试模式运行的时候,#define sdbgprintf printf这句宏定义起作用

但是用borland C++3.1的时候,单步运行直接把 sdbgprintf("a=%d,b=%d\n", a, b);这行跳过, 为什么?


1楼2015-04-17 20:11回复
    可能Borland C++和VC在调试时定义的标志宏是不一样的,你可以看下工程设置选项,可以自己把_DEBUG自己添加进去,或者在条件判断的时候,把它的那个也加进去就行了。


    IP属地:山东2楼2015-05-12 08:33
    收起回复