所以我定义了..

#define RADIAN(x) x*3.14159265f/180.0f

然后像这样使用它:
RADIAN(theta-90)

我的程序不断给我不正确的结果,花了我几个小时才意识到上面的陈述和下面的陈述之间存在巨大差异。
RADIAN((theta-90))

现在我的程序运行正常。为什么第一个陈述不正确?

最佳答案

#define仅进行文本替换,因此RADIAN(theta-90)实际上是theta-90*3.14159265f/180.0f,显然不是您的意思。尝试

#define RADIAN(x) ((x)*3.14159265f/180.0f)

代替。

08-17 15:18