【发布时间】:2014-04-13 08:56:34
【问题描述】:
所以我在编译以下代码时收到“初始化元素不是常量”错误:
#include <stdlib.h>
#include <stdio.h>
#include <math.h>
float wl = 2.0f;
float k = 2.0f * (float) M_PI / wl;
int main ()
{
//Do stuff
}
如果我将 "float k" 移动到 main 方法中,则不会出现错误,但这对我来说不是一个选项,因为我需要 float k 作为全局变量。即使我把它改成这样:
const float wl = 2.0f;
const float k = 2.0f * (float) M_PI / wl;
错误仍然发生。我该如何解决这个问题?
【问题讨论】:
-
考虑在一开始就在
main中为k赋值,同时将其声明为没有初始化的全局变量。
标签: c global-variables