关于我正在做的练习中的二维数组

Regarding two dimensional arrays in an exercise I was working on

本文关键字:练习 二维数组 于我正      更新时间:2023-10-16

我正在做一些练习,遇到了这个:

给定元素类型 int 的二维数组x,编写一个 表达式,其值为第 3 个元素之和 行/第 4 列和第 5 行/第 1 列中的元素。

现在的解决方案是:

x[2][3] + x[4][0]

我的第一个假设是:

x[3][4] + x[5][1]

这显然是错误的。我有点难以理解为什么答案是这样写的。任何帮助,不胜感激。

数组在

C++中索引为零。

数组从

0 开始索引,因此如果要访问第 n 个位置的值,则必须使用 T[n-1] 访问它。

因为数组的索引为零。数组中的第一个元素始终是 Array[0]

这是因为数组中的指针从 0 开始,而不是 1。

Becuase 数组以索引 0 开头。为了更好地理解它,将其转换为指针形式,它将简化为:

x是指向数组的指针:

*(x+0*NO_OF_COL+0) = x[0][0] = 0th row, 0th element,
*(x+0*NO_OF_COL+1) = x[0][1] = 0th row, 1st element,

*(x+1*NO_OF_COL+0) = x[1][0] = 1st row, 0th element,
*(x+1*NO_OF_COL+1) = x[1][1] = 1st row, 1st element,