gpt4 book ai didi

c - 初始化元素不是常量 - 如何解决错误?

转载 作者:行者123 更新时间:2023-11-30 14:24:11 28 4
gpt4 key购买 nike

关注此link

我做到了:

static const struct attribute const *attrs1= {
&foo_attribute.attr,
NULL,
};
static const struct attribute_group const attr_group = {
.attrs = attrs1,
};

但是出现这些错误:

error: initializer element is not constant
error: (near initialization for 'attr_group.attrs')

找到this解决方案,但不明白如何解决它......

编辑:该行触发了错误:

.attrs = attrs1,

最佳答案

是的,另一个struct对象或另一个变量的内容永远不会被视为可在static对象的初始值设定项中使用的常量表达式。

但是你的第一次初始化也是假的。可能你的意思是

static const struct attribute * const attrs1= &foo_attribute.attr;

所以你对第二个的初始化将是这样的

static const struct attribute_group attr_group = {
.attrs = &foo_attribute.attr,
};

关于c - 初始化元素不是常量 - 如何解决错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12130846/

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