是否可以使用包含#define 名称的字符串获取宏的值?还是编译代码后无法通过名称访问宏?
指出我所追求的:
#define NAME "VALUE"
char string[5];
// I want the content of string to be changeable to access any define
strncpy(string, "NAME", 4);
fprintf(stderr, "%s\n", string);
我想要输出:VALUE
编辑 由于 MOHAMED 的回复,我找到了这个解决方案:
#define NAME "VALUE"
char string[5];
strncpy(string, "NAME", 4);
if(strncmp(string, "NAME", 4) == 0) {
fprintf(stderr, "%s\n", NAME);
}