在尝试编译简单的c ++项目时,我收到以下错误:
syntax error : missing ';' before '{'
Run Code Online (Sandbox Code Playgroud)
我做了我的研究.编译器不允许在for循环中声明变量,这对我来说非常不方便.如果我在for循环之前声明循环变量,则错误消失.
这是一个带有"stdafx.h"预编译头的c ++项目.
这个编译器行为(C89)是由我使用预编译的头文件强制执行的,还是我过去使用我的配置编写了一些内容?有没有办法绕过这个顾客?
PS我在Windows 7 64位上使用visual studio 2012;
代码示例:
错误在第一行
for (int idx = 0, int i = 100; idx < (sizeof(anTestScores) / sizeof(int)); i++, idx++)
{
anTestScores[idx] = i;
}
Run Code Online (Sandbox Code Playgroud)这个编译
int idx;
int i;
for (idx = 0, i = 100; idx < (sizeof(anTestScores) / sizeof(int)); i++, idx++)
{
anTestScores[idx] = i;
}
Run Code Online (Sandbox Code Playgroud)跟着去
for (int idx = 0, i = 100; idx < (sizeof(anTestScores) / sizeof(int)); i++, idx++) { anTestScores[idx] = i; }
Run Code Online (Sandbox Code Playgroud)
这在循环的第一个语句中声明了两个 int类型的变量for.
其工作原因和您的其他尝试不符合以下原因:
每个声明语句必须通过a分隔;,但同样;用于分隔for(;;)循环标题的各个部分,因此您尝试使用','运算符绕过它.由于语法错误,哪个不起作用
| 归档时间: |
|
| 查看次数: |
339 次 |
| 最近记录: |