多维数组c ++产生奇怪的值

时间:2016-07-01 20:50:06

标签: c++ arrays multidimensional-array

我对Python,OOP和一些编程原理有一些了解,我现在正在尝试自学C ++。但是,在尝试处理多维数组时,我遇到了一个非常奇怪的意外问题。基本上,我有这个代码:

#include <iostream>
using namespace std;

int main() {

  int a[2][2] = { {2, 3} , {4, 6} };

  for (int i = 0; i < 2; i++) {
    for (int y = 0; i < 2; y++) {
      cout << a[i][y] << endl;
    }
  }

  return 0;

}

它开始很棒(返回2,4,5,6;但最终有许多奇怪的,看似随机的数字)。 但是,在Python中类似的代码:

a = [[2, 3], [4, 6]]
for i in range(2):
 for y in range(2):
  print a[i][y]

只打印更多预期:2,3,4,6。为什么?我究竟做错了什么?

(另外,有没有人对什么项目学习c ++有很好的建议?)

1 个答案:

答案 0 :(得分:2)

  

简单错字:for (int y = 0; i < 2; y++) { - &gt; for (int y = 0; y< 2; y++) {

根据我的理解,

“如何学习C ++”在本论坛中是偏离主题的。把希望寄托在有用的评论上。