【问题标题】:Understanding the usage of a variable as an array size in C [duplicate]了解变量在C中作为数组大小的用法[重复]
【发布时间】:2020-09-10 13:16:38
【问题描述】:

我试图了解范围界定的不同之处:

//global scope
int size = 4;
int array[size]; // error: variably modified 'array' at file scope

int main(void) {
  int buff[size]; // works!
}

如何使用变量作为数组大小在全局范围内不起作用但在 main 内部起作用?如果我改用宏就可以了。

另外,使用const 对大小有影响吗?

【问题讨论】:

标签: c


【解决方案1】:

只需让它编译时整数常量表达式,因为数组长度必须在编译时指定,用define

#define SIZE   6

int array[SIZE];

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2020-09-03
  • 1970-01-01
  • 2017-03-28
  • 2014-11-23
  • 2021-09-18
  • 1970-01-01
  • 2019-12-28
  • 2016-08-08
相关资源
最近更新 更多