C++ 二维数组通过for循环赋值,用指针体现,出现无限循环。。。。
问题描述:
代码如下:
for(int (*p)[4]=ia;p <p+3;++p)
for(int *q=*p;q <q+4;++q)
cout<<*q<<" ";
cout<<endl;
本人是一名菜鸟
答
p <p+3
这个条件永远成立,因为p被更改了,可以这么写:
int *maxp = p + 3;
for(int (*p)[4]=ia;p <maxp;++p)
...
答
这个代码奇怪到都不能回答了 = =
建议要不先附上完整的代码?
答
p <p+3;永远为真
如果是新手,建议使用两个for,i,j访问