这段代码是什么意思?
struct foo_t {
int a;
int b;
} foo[10] = {{0,0}}
Run Code Online (Sandbox Code Playgroud)
foo [0]是{0,0},但其余的呢?C标准如何处理这个问题?
添加.我在这里找到了一个详尽的答案.我想我的问题应该删除.
整个阵列将与两者的值0结构被初始化a和b.这与具有原始值的以下情况类似:
int foo[10] = {0};
Run Code Online (Sandbox Code Playgroud)
其中数组中的每个整数都将使用该值进行初始化0.
C99标准规定如下:
如果括号括起的列表中的初始值设定项少于聚合的元素或成员,或者用于初始化已知大小的数组的字符串文字中的字符数少于数组中的元素,则聚合的其余部分应为隐式初始化与具有静态存储持续时间的对象相同.
| 归档时间: |
|
| 查看次数: |
3411 次 |
| 最近记录: |