在 APUE2 7.11 节中,看到了 ISO C 中还有一个字符串创建运算符: #
使用举例:
#include
#define MAX 100
#define MIN 0
#define pr(name) show(#name, name)
static void show(const char *name, int value)
{
printf("%s = %d\n", name, value);
}
int main(int argc, char *argv[])
{
pr(MAX);
pr(MIN);
return 0;
}
输出结果:
MAX = 100
MIN = 0
说明:
pr(MAX);
这将由 C 预处理程序扩展为:
show("MAX", MAX);
阅读(2197) | 评论(0) | 转发(0) |