gpt4 book ai didi

c++ - C++中的二维步长数组

转载 作者:行者123 更新时间:2023-11-30 03:02:23 24 4
gpt4 key购买 nike

我是 C++ 的新手,我花了一个晚上思考这个问题。我想创建一个二维数组,给出第一维的长度。第二维的长度,从 1 增加。例如对于二维数组 a[][],a[0][] 有 1 个元素,a[1][] 有 2 个元素,a[2][] 有 3 个元素,等等。

这听起来不像是一个硬结构,但我找不到两个来创建它 - 我所能做的就是创建一个 x * x 数组,这意味着一半的空间对我来说是浪费的。

有人知道吗?提前致谢。

最佳答案

std::vector 解决方案:

vector< vector<int> > stairs;

for(int i = 0; i < n; i++) // n is size of your array
stairs[i].resize(i+1);

您也可以使用普通指针来做到这一点:

int * stairs[n];
for(int i = 0; i < n ; i++)
stairs[i] = new int[i+1];

但是这次您将不得不担心在不再需要时删除此结构。

关于c++ - C++中的二维步长数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10199758/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com