C语言中问为什么我在for()里面直接定义变量会出错,还是新手不是很懂 求解释

#include<stdio.h>intmain(){intcode[]={5,3,1,4,2};for(inti=0;i<5;i++)printf("code[%d]=... #include<stdio.h>
int main()
{

int code[]={5,3,1,4,2};
for(int i=0;i<5;i++)
printf("code[%d]=%d\n",i,code[i]);
return 0;
}
展开
 我来答
6fone
2015-08-13 · TA获得超过804个赞
知道小有建树答主
回答量:631
采纳率:33%
帮助的人:539万
展开全部
C89规定,在任何执行语句之前,在块的开头声明所有局部变量。
在C99以及C++中则没有这个限制,即在首次使用之前,可在块的任何位置都可以声明变量。
你用的编译器版本太低啦,建议把文件后缀改成.cpp,按照c++的方式编译,不会出错。
a510718250
2015-08-13 · TA获得超过211个赞
知道答主
回答量:177
采纳率:0%
帮助的人:48.2万
展开全部
这是一种编程规范,C语言相关的编程文档规定是不允许在for()里面直接定义变量会出错,但是C++可以。
这个是习惯问题,改过来就好了,希望能帮您
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
826010478
2015-08-13 · TA获得超过521个赞
知道小有建树答主
回答量:920
采纳率:53%
帮助的人:288万
展开全部
这个和编译器有关系,一般C++支持,C不支持。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
开具境界
2015-08-13 · 超过14用户采纳过TA的回答
知道答主
回答量:104
采纳率:0%
帮助的人:44.6万
展开全部
你是用VS的吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式