gpt4 book ai didi

C结构初始化

转载 作者:行者123 更新时间:2023-12-04 02:52:09 25 4
gpt4 key购买 nike

我从网上得到了以下代码:

struct {
int x;
struct {
int y, z;
} nested;
} i = { .nested.y = 5, 6, .x = 1, 2 };

结果是:

i.nested.y = 2
i.nested.z = 6

但是不知道为什么,网上的文章没有给出任何解释。

最佳答案

非指定初始化器总是对结构中的下一个元素进行操作。所以最新的 2.x 之后的内容进行操作,即 .nested.y。同样,6 用于 nested.z

如果一个初始值设定项对一个元素有多个值,则列表中的最后一个值将获胜。

但是如果你的编译器实现了指定的初始化器,就没有理由不使用它们。您给出的示例非常牵强,没有太大的教育值(value)。

关于C结构初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17464822/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com