gpt4 book ai didi

c - 初始化元素不是常量

转载 作者:太空狗 更新时间:2023-10-29 14:50:24 24 4
gpt4 key购买 nike

我必须为静态变量分配一个从函数中获取的值。我尝试执行以下操作,但我得到的初始化元素不是常量。

int countValue()
{
return 5;
}

void MatrixZero()
{

static int count=countValue();
count++;
printf("count value %d \n",count);

}


int main()
{
MatrixZero();
return 0;

}

最佳答案

因为...好吧...您的静态变量的初始值设定项不是常量。它必须是一个常量表达式。试试这个:

static int count = SOME_VALUE_OUT_OF_RANGE;
if (count == SOME_VALUE_OUT_OF_RANGE) {
count = countValue();
}

检查是否已经初始化。

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

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