totalyoung
2015-10-18 13:37
采纳率: 33.3%
浏览 2.1k

C++ 二维数组通过for循环赋值,用指针体现,出现无限循环。。。。

代码如下:
for(int (*p)[4]=ia;p <p+3;++p)
for(int *q=*p;q <q+4;++q)
cout<<*q<<" ";
cout<<endl;

本人是一名菜鸟
  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • threenewbee 2015-10-18 15:39
    已采纳

    p <p+3
    这个条件永远成立,因为p被更改了,可以这么写:

     int *maxp = p + 3;
    for(int (*p)[4]=ia;p <maxp;++p)
    ...
    
    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • cxlovu 2015-10-18 13:39

    这个代码奇怪到都不能回答了 = =
    建议要不先附上完整的代码?

    评论
    解决 无用
    打赏 举报
  • havedream_one 2015-10-19 03:02

    p <p+3;永远为真
    如果是新手,建议使用两个for,i,j访问

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题