我在Visual C++中遇到错误,这让我很难过.
错误是错误c2143读取:语法错误:在'常数'之前缺少')'
我的代码行是:
coefficient[i] = (1 - (2 * depth)) + ((t - floor( t + 0.5 ) + 1 ) 2 * depth);
我在文件的开头有#include,它应该定义floor(double)函数.
对变量的更多解释.
double depth是可以在其中找到此行的类的成员变量
.int i是递增索引值.
double t是递增值.
他们所做的事实上并不重要,但我想澄清一下,这三者都已被定义为基本类型的变量.
我已经完成并验证所有括号都匹配.关于编译器所指的"常量",我有点不知所措.有任何想法吗?
我不太确定这是否与编译器给你的错误相同,但是你必须在第二个'2'前加一个'*'符号,这样:
coefficient[i] = (1 - (2 * depth)) + ((t - floor( t + 0.5 ) + 1 ) 2 * depth);
变成这样:
coefficient[i] = (1 - (2 * depth)) + ((t - floor( t + 0.5 ) + 1 ) * 2 * depth);
其他海报已经向您展示了声明中的实际错误,但是请将其拆分为多个子语句,以便更清楚地显示您尝试以数学方式进行的操作,因为如果您不这样做,该功能将在未来引起您的头痛"T!
coefficient[i] = (1 - (2 * depth)) + ((t - floor( t + 0.5 ) + 1 ) (the problem is here) 2 * depth);