gpt4 book ai didi

通过改变宏的值进行条件编译

转载 作者:行者123 更新时间:2023-11-30 16:25:33 26 4
gpt4 key购买 nike

我想用条件编译来编译一个程序,而不需要重新定义宏,例如

#include <stdio.h>
#define X 1
int main ()
{
#ifdef X
printf("HI\n");
#else
printf("Hello\n");
#endif // X
return 0;
}

如果我将宏的值更改为 0,则 else 部分不会被执行,而是单独执行 if 部分,如果我单独更改宏或 if 语句,则 else 部分将被编译,我的问题是,有没有办法通过读取宏的值来条件编译?

最佳答案

你想要的是#if

#if X
printf("HI\n"); // will be compiled if X is anything but 0
#else
printf("Hello\n"); // will be compiled if X is 0
#endif // X

关于通过改变宏的值进行条件编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53349698/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com