Dex*_*mat 3 c arrays initialization
我想知道是否:
int a[] = {1, 2};
分配sizeof(int)*括号内的常量数
int a[5] = {1, 2};
将常量分配给0到1的数组字段,然后填充0
int a[5] = {};
填0
当我这样做时会发生什么:
int a[] = {};
谢谢.
int a[5] = {};
Run Code Online (Sandbox Code Playgroud)
和
int a[] = {};
Run Code Online (Sandbox Code Playgroud)
不是有效的C定义.
在GNU C(带有gcc扩展名的C)中,您可以使用empty {},它被认为是相同的{0}.
请注意,这int []是一种不完整的类型 当使用显式初始化器初始化不完整类型的数组时,类型完成,然后数组的元素数是括号初始化列表中的元素数.
因此int a[] = {0};,在C中定义一个1元素的数组,在GNU C int a[] = {};中也是如此.
| 归档时间: |
|
| 查看次数: |
98 次 |
| 最近记录: |