【发布时间】:2012-05-01 05:13:13
【问题描述】:
Linux 内核 4.16 的文件include/linux/typecheck.h 包含此代码。
#define typecheck(type,x) \
({ type __dummy; \
typeof(x) __dummy2; \
(void)(&__dummy == &__dummy2); \
1; \
}
检查x 是否与参数type 的类型相同。
但我看不懂这行:
(void)(&__dummy == &__dummy2);
比较两个变量的首地址有何帮助?
【问题讨论】:
标签: c linux linux-kernel