使用C中的另一个数组初始化数组大小

时间:2015-04-04 21:03:57

标签: c arrays 2d

我正在从文本文件中读取两个值并将它们保存到数组中,我们将其称为array1。 现在,是否可以使用arrays1的元素初始化2D数组? (即char array2 [array [0]] [array [1]];)

我已经尝试了这个,程序开始表现得很奇怪。我还尝试在整数中移动元素的值,然后使用整数作为数组大小。这种方法也不起作用。

有关我如何实施此建议的任何建议吗?

1 个答案:

答案 0 :(得分:0)

只有在编译时知道数组的第二维时,才能使用数组初始化语法初始化2D数组。

示例:

// Create a 1 x 2 array.
char array2[][2] = {{array[0], array[1]}};

// Create a 2 x 2 array.
// Only array2[1][0] and array2[1][0] are initialized
// from array. Rest are zero initialized.
char array2[][2] = {{array[0]}, {array[1]}};

// Create a 3 x 2 array.
// Only array2[0][1] and array2[0][1] are initialized
// from array. Rest are zero initialized.
char array2[3][2] = {{array[0], array[1]}};