gpt4 book ai didi

c - 错误 : expected identifier or ‘(’ before, 宏定义

转载 作者:行者123 更新时间:2023-12-02 05:41:04 26 4
gpt4 key购买 nike

我在尝试定义这个类似函数的宏时遇到了麻烦,它采用 4 个 vector 大小来表示一般圆柱体顶面的长轴和短轴,并确定一般圆柱体的类型。 EQUAL 是一个已定义的宏,用于查看两个浮点值是否彼此“相等”。

3080 #define GET_TGC_TYPE(_type, _a, _b, _c, _d) { \
3081 if (EQUAL((_a), (_b)) && EQUAL((_c), (_d))) { \
3082 /* circular base and top */
3083 if (EQUAL((_a), (_c))) { \
3084 /* right circular cylinder */
3085 (_type) = RCC; \
3086 } else { \
3087 /* truncated right cone */
3088 (_type) = TRC; \
3089 } \
3090 } else { \
3091 /* elliptical base or top */
3092 if (EQUAL((_a), (_c)) && EQUAL((_b), (_d))) { \
3093 /* right elliptical cylinder */
3094 (_type) = REC; \
3095 } else { \
3096 /* truncated elliptical cone */
3097 (_type) = TEC; \
3098 } \
3099 }
3100 }

我得到的错误是

3083:9: error: expected identifier or ‘(’ before ‘if’
3086:11: error: expected identifier or ‘(’ before ‘else’
3090:5: error: expected identifier or ‘(’ before ‘}’ token
3090:7: error: expected identifier or ‘(’ before ‘else’
3100:1: error: expected identifier or ‘(’ before ‘}’ token

我对 C 宏没有太多经验,所以我完全有可能遗漏了一些明显的东西。

最佳答案

您的注释行不包含尾随 \,因此宏定义停在它们的开头。

关于c - 错误 : expected identifier or ‘(’ before, 宏定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10954029/

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