我必須分配一個靜態變量,我從一個函數中獲取一個值。 我試着做了以下,但我得到的初始化元素不是恆定的。初始化元素不是一個常量
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