错误C2065:&x27;我';:在C中迭代时未声明的标识符
我的代码不断生成错误: 错误C2065:“i”:在C中迭代时未声明的标识符 这是它特别抱怨的部分:错误C2065:&x27;我';:在C中迭代时未声明的标识符,c,visual-studio-2010,visual-studio,C,Visual Studio 2010,Visual Studio,我的代码不断生成错误: 错误C2065:“i”:在C中迭代时未声明的标识符 这是它特别抱怨的部分: for (int i = 0; i < (gamesToPlay); i++) { printf("You are now playing game %d\n", i); } for(int i=0;i
for (int i = 0; i < (gamesToPlay); i++)
{
printf("You are now playing game %d\n", i);
}
for(int i=0;i<(gamesToPlay);i++)
{
printf(“您现在正在玩游戏%d\n”,i);
}
我做错什么了吗?我正在使用VS2010编译一个.c文件。声明
I
在for
int i;
for (i = 0; i < (gamesToPlay); i++)
{
printf("You are now playing game %d\n", i);
}
inti;
对于(i=0;i<(游戏停止播放);i++)
{
printf(“您现在正在玩游戏%d\n”,i);
}
for语句中的第一个表达式可以是C99中引入的声明。VS2010不支持C99,这就是为什么会出现此错误。在块的开头声明i
,如C89所示
int i;
...
for (i = 0; i < (gamesToPlay); i++)
{
printf("You are now playing game %d\n", i);
}
inti;
...
对于(i=0;i<(游戏停止播放);i++)
{
printf(“您现在正在玩游戏%d\n”,i);
}
Visual Studio 2010仅支持C89,不支持C99。在C89中,必须在块的开头声明一个变量,如下所示:
void foo(void)
{
int i;
for (i = 0; i < gamesToPlay; i++)
{
//do something
}
}
void foo(void)
{
int i;
对于(i=0;i 你试图在C++中写C++,就像在C89中尝试写C99。你需要得到一个真正的C编译程序只有2013,我相信:(和)支持还没有满,但这是一个很好的进步。注意,即使在C89,无效的FO(空隙){/**/}/<代码>被推荐在 ValueFoE(){{/*.*/} < /Cord> >。