使用二维数组时,在列之间循环与在行中循环

用户8116022

我试图理解这段代码。让我感到困惑的第一件事是,在第二行代码中,我相信他们正在创建一个指针数组,并且计划是这些指针将指向数组。

我知道计算机并不关心,但对我来说,让指针数组水平是最合乎逻辑的,然后每个数组都可以从该水平线上的点下拉。

那么,“dynamicArray = new int *[COLUMNS];”是否合理?反而?

int **dynamicArray = 0;

//为行元素分配的内存。

dynamicArray = new int *[ROWS] ;

//为每列元素分配的内存。

for( int i = 0 ; i < ROWS ; i++ )  
dynamicArray[i] = new int[COLUMNS];

//释放分配的内存

for( int i = 0 ; i < ROWS ; i++ )  
delete [] dynamicArray[i] ;  
delete [] dynamicArray ;

编辑:我更多地考虑了这个问题,我经常被绊倒的事情是我以错误的方式考虑行和列。
dynamicArray = new int *[ROWS];
我理解这是一个指针数组,每个指针都指向一列。每一列中的元素数等于行数(在我们的二维数组中,列的每一行都有一个垂直元素)。我理解正确吗?
当我需要使用嵌套的 for 循环来初始化二维数组时,我也经常被绊倒。

哈里

行/列是对称的/可互换的,正如您所说,“计算机不在乎”。话虽如此,您为什么认为“让指针数组水平放置然后每个数组都可以从该水平线上的点下拉是最合乎逻辑的”?

我会反其道而行之。我会发现“可视化”水平对象的行要容易得多(毕竟,我们水平书写(例如,字符数组),并且行/行从上到下(例如,数组数组))。我认为代码比你建议的更自然(对我来说)。

关键是,我们都有不同的想法,归根结底,ROWS/COLUMNS 只是变量,可以很容易地写成 X/Y 或 V/H 或 W/H 或其他什么。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

循环更新ruby中的二维数组的整个列

来自分类Dev

在二维数组中嵌套 for 循环

来自分类Dev

使用for循环反转二维数组

来自分类Dev

使用foreach循环将值循环到二维数组中?

来自分类Dev

如何使用for循环在现有二维数组的末尾多次添加二维数组?

来自分类Dev

二维数组不在laravel中循环

来自分类Dev

在python中创建动态二维数组(循环)

来自分类Dev

使用for循环初始化二维JPanel数组

来自分类Dev

如何通过Foreach循环在Java中的二维数组中获取列?

来自分类Dev

如何通过Foreach循环在Java中的二维数组中获取列?

来自分类Dev

Javascript循环槽二维数组

来自分类Dev

二维数组循环不显示

来自分类Dev

循环成二维数组

来自分类Dev

如何在 C++ 中使用基于范围的循环迭代二维数组的特定列

来自分类Dev

如何在C中为二维数组使用double for循环?

来自分类Dev

无法使用for循环在java中初始化二维数组

来自分类Dev

如何使用javascript中的循环制作二维背景

来自分类Dev

使用for循环用两个一维数组填充二维数组

来自分类Dev

在Java中已经有2个循环的二维数组中循环

来自分类Dev

使用 PHP 将图像像素值存储在二维数组中,然后使用循环访问它们

来自分类Dev

循环浏览一维列表中的二维列表

来自分类Dev

如何更改循环二维数组时找到的特定值?

来自分类Dev

VBA Excel-循环中的Redim二维数组

来自分类Dev

不了解二维数组的每个循环

来自分类Dev

二维数组上的CUDA网格跨度循环

来自分类Dev

嵌套循环二维数组的计算与构造

来自分类Dev

Excel VBA二维数组循环停止

来自分类Dev

用单个循环填充二维数组

来自分类Dev

当二维数组 [][] 和数组 [] 之间的赋值合法时?

Related 相关文章

热门标签

归档