vc6.0 下可以在for 语句里去申明 数组指针吗?
大家看一下这断代码。在vs2003里面是可以正常运行的。
可是在vc6.0下去不能通过编译。我也找不到原因,知道的解释一下!
#include <iostream>using std::cout;using std::endl;void main(){ int ia[2][3] = {1,2,3,4,5,6}; for(int (*p)[3] = ia; p!=ia+2; ++p) { }}#include <iostream>using std::cout;using std::endl;void main(){ int ia[2][3] = {1,2,3,4,5,6}; int (*p)[3] = ia; for(; p!=ia+2; ++p) { }}#include <iostream>using std::cout;using std::endl;void main(){ int ia[2][3] = {1,2,3,4,5,6}; int (*p)[3] = ia; for(; p!=ia+2; ++p) { }}
[解决办法]
没有错误啊!
===============
楼上的说得没错
[code=C/C++][/code]
发表于:2007-12-25 09:44:343楼 得分:0
没有错误啊!
C/C++ code
#include <iostream>
using std::cout;
using std::endl;
void main()
{
int ia[2][3] = {1,2,3,4,5,6};
int (*p)[3] = ia;
for(; p!=ia+2; ++p)
{
}
}
编译没错误
第一段代码for(,,)里定义数组不合法
[解决办法]
VS2003版本比vc6高
vs2003能通过但vc6不能通过很正常
非要问为什么vc6不能通过没有必要
开发vc6的程序就没有让vc6支持这种表达式
那这种表达式就是不合法的