问题标签 [dynamic-arrays]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
7702 浏览

c++ - 如何使用(Boost多维数组库)构造动态二维数组?

我在使用 boost 多维数组时需要帮助。我必须构造一个二维数组,其中: (0 <= j <= 1) 和 (i) 根据以下条件动态增长:

因此,这就像构建一个包含(未知)列和两行的表。

我已经从 Boost Library 网站上提供的示例开始:

问题是我没有彻底理解上面的代码,以便调整它的结构并建立我想要的数组。在使用 Boost Library 时,我不确切知道如何在我的数组中添加/删除元素,特别是如果这个数组像我上面描述的那样动态增长。

例如,在处理向量时,我倾向于在调整向量大小后使用:push_backpop_back

0 投票
2 回答
1685 浏览

c++ - C++动态多维数组问题

我正在开发一个 2d 平台游戏。一切都很好,直到我遇到一些难以解决的问题。关卡地图存储在动态多维数组(char **map)中。它工作正常,直到我想重新定义它

这是代码的一部分:

第一次一切正常,但是当我第二次需要重新定义数组时,我的程序在该部分崩溃,当数组从另一个接收新值时。可能是我错过了一些东西,但我找不到它!我正在寻找这个问题,但没有发现我做错了什么。请帮帮我。

0 投票
1 回答
127 浏览

c - “&(epage->incoming[0]) = spage;”的区别 和“&(epage->incoming[p2]) = spage;”

此特定代码块的最后一行产生错误“需要左值作为赋值的左操作数”。困惑在于为什么最后一行会引发此错误,而倒数第二行则不会。

其中spage,epage是下面定义的结构:

并且该函数find返回一个指向 a 的指针struct webpage

通过更改结构outgoingincoming双指针并将最后一行更改为(epage->incoming[p2]) = spage;.

仍然不知道为什么会发生错误...

0 投票
2 回答
4416 浏览

arrays - Linux内核模块中的动态数组

我正在修改 PKTGEN 以发送包含斐波那契数列序列的数据包。这是我第一次接触内核开发,所以我对内存分配的可用函数不是很熟悉。我也不是 C 大师 :)

我将算法的迭代步骤存储在一个数组中,如果有人要求一个很好的斐波那契 n 参数,我希望它是动态的。

Realloc 不可用。你知道动态扩大数组大小的方法吗?

谢谢

0 投票
6 回答
358 浏览

c++ - 为什么 C++ 中需要动态数组?

我不明白对动态数组的需求。据我目前了解,动态数组是必需的,因为不能总是知道在运行时需要什么大小的数组。

但肯定有人可以做到这一点吗?:

那么动态数组和操作符有什么大不了的new呢?

0 投票
2 回答
130 浏览

php - PHP数组操作

我有一个数组$arr = array("name" => "Fom Xong" , "Sales" => "100");

从这个数组我想生成一个类似这样的字符串

是否可以???

提前致谢

0 投票
6 回答
1160 浏览

php - PHP将带有逗号分隔值的字符串转换为数组的最有效方法?

我已经进行了一些搜索,大多数帖子都使用 php explode 函数来分隔字符串并将其值存储到数组中。

我需要一种有效的转换方式:

到一个数组,所以我可以使用$array[3].

有没有比爆破更好的方法?

0 投票
5 回答
7281 浏览

c++ - 为什么通过基指针删除 [] 派生对象数组是未定义的行为?

我在 C++03 标准中找到了以下代码片段5.3.5 [expr.delete] p3

在第一种选择(删除对象)中,如果要删除的对象的静态类型与其动态类型不同,则静态类型应为操作数动态类型的基类,并且静态类型应具有虚拟析构函数或行为未定义。在第二种选择(删除数组)中,如果要删除的对象的动态类型与其静态类型不同,则行为未定义。


快速回顾静态和动态类型:

的静态类型pB*,而动态类型*pD1.3.7 [defns.dynamic.type]

[示例:如果p静态类型为“指向 ”class B的指针指向 的对象class D,从 派生B,则表达式的动态类型*p为“<code>D.”]


现在,再次查看顶部的引用,这意味着如果我做对了,下面的代码会调用未定义的行为,而不管是否存在virtual析构函数:

我是否以某种方式误解了标准中的措辞?我忽略了什么吗?为什么标准将此指定为未定义的行为?

0 投票
4 回答
599 浏览

c++ - 动态多维数组

将动态多维数组称为数组数组是否合适?

看看这个,我会说它们是指向大小为 7 个整数的数组的指针数组。但是动态数组甚至被认为是数组还是只是指针返回的一小块内存?

0 投票
7 回答
118 浏览

c++ - 有没有办法区分 new 和 new[] 的返回值?

考虑这段代码:

正如预期的那样,结果是 4。现在,考虑这个其他代码:

我希望得到 40 (分配数组的大小),但结果仍然是 4

现在,假设我有一个函数int *foo(),它返回指向使用new或使用创建的结构的指针new[](但我不知道是哪一个):

我的问题是,有没有办法(或破解)知道是p指向单个整数还是整数数组?

请记住,这只是一个理论问题。我不会以这种方式编写真正的代码。