2013-06-24 32 views

回答

6

需要额外设置的{}(用于阵列外{},内部的一组(一个或多个)为阵列的元素):

Hello hello[100] = { {1, 2.0, 3} }; 
+2

注意,其余的99个元件将被隐含地初始化为{0,0.0,0};这是当数组中的元素少于初始化符时的规则。 –

5

使用此片段:

Hello hello[100] = {{1, 2.0, 3}}; 

外括号初始化数组,但这些大括号中只有元素 - 您的第一个数组元素。因此,你用外部大括号中的值初始化hello [0]。

1

如果编译器支持C99特征则可以使用指定初始化程序初始化数组的任何元素。

Hello hello[100] = {[0] = {1,2.0,3}}, [98] = {2,3.5,4} }; 

这将初始化元素{1,2.0,3}和元素{2,3.5,4} .Others将被初始化为{0,0.0,0}它的自我。这种方法的另一个优点是,为了在所述元件列不再是问题即你可以初始化上述阵列

Hello hello[100] = {[98] = {2,3.5,4}, [0] = {1,2.0,3} }; 
+1

+1,不知道之前 –

+0

我很高兴它为你提供了帮助。 – haccks

相关问题