【发布时间】:2013-02-18 01:37:52
【问题描述】:
我正在尝试创建一个双打数组,我知道我可以这样做,
double a[200];
但为什么我不能像这样创建一个?
int b = 200;
double a[b];
它不起作用。
谁能帮帮我?
更新:
int count;
count = 0
while (fgets(line,1024,data_file) != NULL)
{
count++;
}
double *x = (double *)malloc(count * sizeof (double));
double xcount = 1.0;
for (int i = 0; i < count; i++)
{
x[i] = xcount/f;
xcount = xcount + 1.0;
printf("%lf\n", x[i]);
}
【问题讨论】:
-
因为数组的大小是固定的。好吧,C 有一些称为 VLA 的新特性允许这样做,但你的编译器一定不支持它。