c - 我如何检查这种宏依赖性?

标签 c

我定义了两个宏

#define the_begin begin = 0
#define the_size  n - begin

我想检查是否在没有 the_begin 的情况下使用了 the_size 宏,因为它依赖于 the_begin

是否可以检查这种依赖性?

最佳答案

依赖性已经通过使用 begin 变量隐式引入。如果您给它起一个更独特的名称,您基本上可以确定它们不会被滥用。

当然,您不能 100% 确定,因为宏会扩展为常规文本。特制文本总是能够模仿宏的效果,因为宏就是这样。

综上所述,您正在做的是一个非常非常糟糕的主意。诸如此类的宏会对读者理解代码的能力产生直接的负面影响。 特别因为,作为宏,它们可以扩展到任何东西——最终执行的代码不会反射(reflect)所写的内容。

这是调试一整夜的好方法。

关于c - 我如何检查这种宏依赖性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15724205/

相关文章:

c++ - 如何将这些 c 代码行转换为 c++

C 字符数组的大小

c - 标识符值错误 C 编程

C:如何从未知大小的文本文件中仅输入 int 数据

c - 我的 C 代码无法运行

c - 5.2 循环二进制如何计算二进制值

c - 用户输入 C 中数组的大小

c - 关于 ansi C 中的余数运算符

c - 重用已编译的 .exe 文件中的字符

java - 如何使用 jdk.incubator.foreign 从 JDK 18 调用 C 函数