问题标签 [array-initialization]

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 回答
189 浏览

c# - 与 C# 中的多维数组初始化混淆

我是一个编程新手,我刚开始学习数组。让我困惑的是在 C# 中初始化多维数组的方式。那是因为我自己没有指定每个元素的坐标,但是 C# 以某种方式做到了。

更具体地说,假设我初始化了这个数组:

鉴于在单维数组初始化中,C# 首先将第一个值放在元素 [0] 中,我假设多维数组也是如此。但它不是对每个单独的维度都做同样的事情吗?这不可能是真的。因为那时它会将“Deadpool”放置在该行的元素 [0] 上,然后它会尝试将“Catwoman”放置在第一列的元素 [0] 上。如果是这种情况,鉴于第一行的元素 [0] 与第一列的元素 [0] 相同,“猫女”将替换“死侍”,因为两者都将写入 [0,0]。然而,使用 aforeach在控制台上写下所有内容,都出现了。那么 C# 如何以及在哪里放置每个值,以避免一个维度的值覆盖另一个维度的值?

0 投票
1 回答
1093 浏览

c - 将 char 数组设置为全零值(在 C 中)

如何将 vars 数组设置为全零“0”值?

谢谢你的帮助。

0 投票
4 回答
179 浏览

c++ - 初始化表

所以这是我到目前为止的程序:

我明白为什么它不起作用。在中damier[*][*]*必须是 aconst或固定数字。有人可以告诉我如何解决这个问题吗?

0 投票
2 回答
877 浏览

c++ - 哪些语言标准允许忽略固定大小数组上的空终止符?

我们正在将 C 代码转换为 C++。
我注意到以下代码在 C 中定义良好,

正如数组初始化中所述:

“如果数组的大小已知,它可能比字符串文字的大小小一,在这种情况下,终止空字符将被忽略。”

但是,如果我要在 C++ 中构建相同的代码,则会收到以下 C++ 错误:

我希望有人能解释一下。

问题:
代码示例在所有 C 语言标准中都有效吗?
它在所有 C++ 语言标准中都无效吗?
是否有一个理由在一种语言中有效但在另一种语言中无效?

0 投票
1 回答
852 浏览

c - 如何在 C 中初始化多维数组?

我想在 C 中初始化多维数组。我通常使用下面的代码。

我的代码是否正确,是否有任何特定的快速代码适合我?

0 投票
3 回答
647 浏览

c# - C# - 我可以使用数组初始化器从另一个字节数组中构建一个字节数组吗?

我想使用数组初始值设定项从另一个字节数组以及形成标题/拖尾的其他一些字节构建一个字节数组。基本上,我想做这样的事情:

GetBytes()不幸的是,以上是虚构的。

有什么好的/优雅的方法可以做到这一点吗?我通过使用 aBinaryWriter将所有内容写入 a MemoryStream,然后将其转换为带有 的字节数组来解决这个问题MemoryStream.ToArray(),但感觉有点笨拙。

0 投票
1 回答
1965 浏览

c# - C# 将数组重置为其初始化值?

假设我有一组按平均、最大值和最小值排列的员工工资:

int[] wages = {0, 0, Int32.MaxValue};

上面的代码已初始化,因此当我找到最大值时,我可以与 0 进行比较,任何高于现有值的东西都会击败它并替换它。所以 0 在这里工作正常。查看最小值,如果我将其设置为 0,我会遇到问题。比较工资(都大于 0)并用最低工资代替最低工资是不可能的,因为没有一个工资会低于 0 值。所以我使用了 Int32.MaxValue,因为它保证每个工资都低于这个值。

这只是一个示例,但还有其他示例可以方便地重置和排列回其初始化内容。c# 中是否有这方面的语法?

编辑:@Shannon Holsinger 找到了答案: wages = new int[] {0, 0, Int32.MaxValue};

0 投票
4 回答
546 浏览

c++11 - 静态布尔数组未按设置初始化

为什么我的静态布尔数组未正确初始化?只有第一个被初始化——我怀疑这是因为数组是静态的。

以下 MWE 是使用 GCC 编译的,并且基于我正在编写的一个函数,该函数已转移到主程序中以说明我的问题。我尝试过使用和不使用 c++11。我的理解是因为这个数组是静态的并且初始化为 true 这应该总是在我第一次进入我的函数时打印出来。所以在这个 MWE 中它应该打印一次。

0 投票
2 回答
584 浏览

c - 将多个数组的元素添加到C中的新数组中

我试图在将每个多项式乘以不同的常数后添加一些多项式。我已经能够设置数组并乘以常数,但是当我将不同数组(多项式)中的每个位置添加到一个新数组中时,我收到错误“可变大小的对象可能未初始化”并且程序无法编译。此外,无论数组的值或 c 的值是什么,乘法总是产生 0。我不确定到底出了什么问题。

任何帮助,将不胜感激

0 投票
1 回答
359 浏览

arrays - 如何将动态数组参数解析为excel vba中的变量

※本题是下题的续题

如何在excel vba中为矩阵单元格使用嵌套循环

我想传递动态数组(参数),我在下面尝试,但它不能正常工作。请你帮助我好吗。

但是在像上面那样初始化 Array(args) 之后,它在 [Startrow1, init with 0] 上返回错误 1004。我还尝试使用 CInt(ftRow) 从字符串类型转换为整数。什么都没有改变。
此外,日志显示 Startrow、Startrow1 的值如下所示。

但是,如果我静态初始化 StartrowArr = Array(2,4,7)。它完美无缺。
如何将参数正确传递给 StartrowArr 和 Startrow1Arr。