这个宏有什么作用?我无法理解它的定义:
#define PAIR(def) [def] = { .name = #def, .val = def, },
来自:ltp-full-20120401/lib/tst_res.c 第 183 行
你可以从这个link获取源码
最佳答案
看起来它是用来初始化结构数组的。
#define PAIR(def) [def] = { .name = #def, .val = def, },
如下使用的宏PAIR(FOOBAR)
将扩展为:
[FOOBAR] = { .name = "FOOBAR", .val = FOOBAR, },
.name
和 .val
将是数组元素的 struct
类型的成员。
关于c - 需要帮助从 ltp 测试套件文件 tst_res.c 理解这个宏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10662650/