相关疑难解决方法(0)

#define宏用于C中的调试打印?

尝试创建一个宏,可以在定义DEBUG时用于打印调试消息,如下面的伪代码:

#define DEBUG 1
#define debug_print(args ...) if (DEBUG) fprintf(stderr, args)
Run Code Online (Sandbox Code Playgroud)

如何用宏实现这一目标?

c c-preprocessor

196
推荐指数
7
解决办法
18万
查看次数

如何在C预处理器中使用#if在#define中?

我想编写一个宏,根据其参数的布尔值吐出代码.所以说DEF_CONST(true)应该扩展到const,并且DEF_CONST(false)应该扩展为无.

显然,以下方法不起作用,因为我们不能在#defines中使用另一个预处理器:

#define DEF_CONST(b_const) \
#if (b_const) \
  const \
#endif
Run Code Online (Sandbox Code Playgroud)

c c-preprocessor

46
推荐指数
2
解决办法
3万
查看次数

标签 统计

c ×2

c-preprocessor ×2