[英]array initializing
我在Linux中遇到了這種代碼構造,並且想了解它
struct mystruct {
int x;
int b[40];
};
/*later */
static struct mystruct e = { .x = 5,
.b = {-1},
};
.b = {-1}是做什么的? 它是否僅初始化數組b的第一個或所有元素? 它是如何工作的 ?
static struct mystruct e = {
.x = 5,
.b = {-1},
};
在這里它將b [0]初始化為-1。 其他元素初始化為0。
這意味着使用以-1開頭,然后為0的數組初始化結構的成員b
.b =
是GCC擴展名。 (如前所述,這也是C99的一部分) {-1}
是標准數組初始化。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.