VS2010中for的用法 为什么VS2010中for(int i=0;i<10;i++)语句编译会报错? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 把int i=0写到外面,编译器对语法的要求严格了。 应该就是这个问题了是不是你之前还有一个for循环也是类似这样定义了一个i 应该不会报错你想啊,他要向下兼容,以前老大个的工程用vc6,要移植到2010的话,那我用了for(int i= 0; i < 10; i++)没报错,连个警告都没给 谁说把定义放在for外面才标准,放里面才标准。 vc2010中for里面定义的变量,作用域已经只在for内部了,与外面的无关。所以最好贴出出错的信息,不要犯全角字符的错误。 我日常开发用的就是2010,没有必须在for之外定义变量的说法。比如:vector<char> a;for( size_t i = 0, j = a.size(); i < j; ++ i ){...}这样用是绝对不会报错的。 下面随便写了个程序:#include<stdio.h>int main(void){ for(int i=0;i<10;i++) printf("%d\n",i); return 0;}编译错误提示如下:1>f:\学习文件\microsoft visual studio\forceshi\forceshi\fortest.c(4): error C2143: 语法错误 : 缺少“)”(在“类型”的前面)1>f:\学习文件\microsoft visual studio\forceshi\forceshi\fortest.c(4): error C2143: 语法错误 : 缺少“;”(在“类型”的前面)1>f:\学习文件\microsoft visual studio\forceshi\forceshi\fortest.c(4): error C2065: “i”: 未声明的标识符1>f:\学习文件\microsoft visual studio\forceshi\forceshi\fortest.c(4): warning C4552: “<”: 运算符不起任何作用;应输入带副作用的运算符1>f:\学习文件\microsoft visual studio\forceshi\forceshi\fortest.c(4): error C2065: “i”: 未声明的标识符1>f:\学习文件\microsoft visual studio\forceshi\forceshi\fortest.c(4): error C2059: 语法错误:“)”1>f:\学习文件\microsoft visual studio\forceshi\forceshi\fortest.c(5): error C2146: 语法错误: 缺少“;”(在标识符“printf”的前面)1>f:\学习文件\microsoft visual studio\forceshi\forceshi\fortest.c(5): error C2065: “i”: 未声明的标识符1>1>生成失败。 vc++ ADO insert into 窗口基类的封装 DLL非接口内部函数调用的复杂问题 调用rand()函数的问题:设置srand((unsigned int)time(0)),为什么还是全是一样的数? 有关TCP分片的问题,不知理解是不是有问题 坐标系 变换 端口进程关联的问题 谁有VSS服务器、客户端的下载地址,100分向送? 急诊 动态链接库问题!如何重建.lib链接文件?? 关于在一个类中定义另一个类的对象 MFC中如何后台调用masm.exe程序生成.obj文件
是不是你之前还有一个for循环也是类似这样定义了一个i
你想啊,他要向下兼容,以前老大个的工程用vc6,要移植到2010的话,那我用了for(int i= 0; i < 10; i++)
没报错,连个警告都没给
所以最好贴出出错的信息,不要犯全角字符的错误。
vector<char> a;
for( size_t i = 0, j = a.size(); i < j; ++ i )
{
...
}这样用是绝对不会报错的。
#include<stdio.h>
int main(void)
{
for(int i=0;i<10;i++)
printf("%d\n",i);
return 0;
}编译错误提示如下:
1>f:\学习文件\microsoft visual studio\forceshi\forceshi\fortest.c(4): error C2143: 语法错误 : 缺少“)”(在“类型”的前面)
1>f:\学习文件\microsoft visual studio\forceshi\forceshi\fortest.c(4): error C2143: 语法错误 : 缺少“;”(在“类型”的前面)
1>f:\学习文件\microsoft visual studio\forceshi\forceshi\fortest.c(4): error C2065: “i”: 未声明的标识符
1>f:\学习文件\microsoft visual studio\forceshi\forceshi\fortest.c(4): warning C4552: “<”: 运算符不起任何作用;应输入带副作用的运算符
1>f:\学习文件\microsoft visual studio\forceshi\forceshi\fortest.c(4): error C2065: “i”: 未声明的标识符
1>f:\学习文件\microsoft visual studio\forceshi\forceshi\fortest.c(4): error C2059: 语法错误:“)”
1>f:\学习文件\microsoft visual studio\forceshi\forceshi\fortest.c(5): error C2146: 语法错误: 缺少“;”(在标识符“printf”的前面)
1>f:\学习文件\microsoft visual studio\forceshi\forceshi\fortest.c(5): error C2065: “i”: 未声明的标识符
1>
1>生成失败。