use*_*316 1 c arrays initialization
我有以下代码:
typedef struct
{
int a;
float b;
int c;
} Hello;
Hello hello[100];
Run Code Online (Sandbox Code Playgroud)
我知道我可以为这个数组的第一个元素赋值:
hello[0] = {1,2.0,3};
Run Code Online (Sandbox Code Playgroud)
但是当我们声明时,如何分配第一个元素 hello: Hello hello[100];
需要额外的一组{}({}数组的外部,数组元素的内部集合):
Hello hello[100] = { {1, 2.0, 3} };
Run Code Online (Sandbox Code Playgroud)
使用此代码段:
Hello hello[100] = {{1, 2.0, 3}};
Run Code Online (Sandbox Code Playgroud)
外括号初始化数组,但这些大括号中只有元素 - 你的第一个数组元素.因此,您使用外括号内的值初始化hello [0].