gpt4 book ai didi

c - 如何在 C 中使用单个赋值来定义多个 #define

转载 作者:行者123 更新时间:2023-12-02 02:48:28 28 4
gpt4 key购买 nike

我发现了一些关于 How do I #define multiple values C / C++ 的相关问题。但这不是我想要的。相反,我想做相反的事情。

我们可以简单地分配这样的东西

int a,b,c,d,e;
a = b = c = d = e = 5;
printf("Value %d",e);

但是我正在寻找的是如何将下面的定义组合到一行中,并给定要分配的固定值。

#define SIZE_OF_NODE_ADD   4
#define SIZE_OF_KEY_ADD 4
#define SIZE_OF_ID_ADD 4
#define SIZE_OF_PW_ADD 4

可以这样做吗?类似的东西

#define SIZE_OF_NODE_ADD = SIZE_OF_KEY_ADD = SIZE_OF_ID_ADD = SIZE_OF_PW_ADD = 4
/* The syntax is wrong, I just emphasize for easier understanding what I am looking for*/

最佳答案

好吧,#define 语句可以在行末尾使用 '\' 处理多行,后面没有任何其他字符,因此您可以创建奇特的 MACROS ( Multi-line DEFINE directives? )。但是解决您的问题的一个简单方法可能是使用引用定义,因此您只需更改该定义即可更改其他值。

#define REFERENCE_VALUE 4

#define SIZE_OF_NODE_ADD REFERENCE_VALUE
#define SIZE_OF_KEY_ADD REFERENCE_VALUE
#define SIZE_OF_ID_ADD REFERENCE_VALUE
#define SIZE_OF_PW_ADD REFERENCE_VALUE

请记住,REFERENCE_VALUE 必须位于文件中使用之前,否则无法编译。

关于c - 如何在 C 中使用单个赋值来定义多个 #define,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62421391/

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