我必须分配一个静态变量,我从一个函数中获取一个值。 我试着做了以下,但我得到的初始化元素不是恒定的。初始化元素不是一个常量
int countValue()
{
return 5;
}
void MatrixZero()
{
static int count=countValue();
count++;
printf("count value %d \n",count);
}
int main()
{
MatrixZero();
return 0;
}
尝试使用C++编译器。请务必添加“#包括”。 C不允许用非常量初始化静态变量。 –
2013-02-15 20:06:08
@RichardPennington这是C和C++是不同的语言。我不认为用C++编译器编译C程序是一个好建议。 – ouah 2013-02-15 20:07:22
@ouah它在首次发布时未被标记为C.我只是指出了C和C++处理静态初始化器的方式上的差异。 – 2013-02-15 20:10:21