【发布时间】:2019-12-03 17:31:01
【问题描述】:
不经常使用 C,我遇到了一个可能很简单的问题。我有几个函数,需要访问全局数组变量g。但是这个变量的实际大小必须在init()-函数中定义。大小取决于其他一些东西,所以 g 必须以某种方式声明为动态大小。我阅读了malloc 和其他功能,但我不确定如何正确使用它们。
例子:
double g[dynamic]; // size is not known yet
int n;
void init()
{
// calculate "n" for array size
n = ...
// declare and initialze g with a size "n"
}
void dostuff()
{
for (int i = 0; i < n; i++)
work(g[i]);
}
我应该如何解决这个问题?
【问题讨论】: