c - 在 main 之前声明数组
问题描述
C语言 - 我不明白为什么
这有效:
#define x 5
int vett[x];
main () {}
这有效:
int vett[5];
main () {}
这有效:
main () {
int x=5;
int vett[x];
}
这有效:
int x=5;
main () {
int vett[x];
}
这不起作用:
int x=5;
int vett[x];
main () {}
解决方案
在所有其他示例中,当在 main 之外时,数组的大小使用常量 (5) 进行初始化。在最后一个示例中,数组的初始化在 main 之外,因此它没有运行代码,编译器不知道 x 的值是什么。
推荐阅读
- c - strtok_r 保存状态行为
- java - 您可以使用 session.execute 从 Datastax 驱动程序执行创建表吗?
- mysql - 字符串中的 MySQL 空格导致问题
- docker - 在gradle中生成dockerfile时设置环境变量?
- bash - 从文本文件读取的 Bash 脚本变量不起作用
- cron - Cron 作业创建数据库备份和邮件给我
- ionic-framework - Ionic Framework 3 错误:窗口重定向问题
- excel - 打印宏要么给我错误 1004 要么崩溃 excel
- javascript - 带有 jquery ajax 响应值的 Javascript 类属性设置器
- javascript - 如何在 jquery 中使用列标题名称获取表列数据