找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1735|回复: 21
打印 上一主题 下一主题
收起左侧

C语言数组太大导致编译失败

  [复制链接]
回帖奖励 30 黑币 回复本帖可获得 30 黑币奖励! 每人限 1 次
跳转到指定楼层
楼主
没有放在main函数里




由于数组太大导致编译失败,麻烦大佬解答一下
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:277550 发表于 2023-9-7 11:50 | 只看该作者
超出存储大小,如果使用large模式+CODE 后还超,建议缩减代码、或使用外存
回复

使用道具 举报

板凳
ID:1079270 发表于 2023-9-7 12:55 | 只看该作者
devcang 发表于 2023-9-7 11:50
超出存储大小,如果使用large模式+CODE 后还超,建议缩减代码、或使用外存

mplab 不支持
回复

使用道具 举报

地板
ID:384109 发表于 2023-9-7 14:01 | 只看该作者
如果一定要这么大的数组,那就说明单片机选型选错了
回复

使用道具 举报

5#
ID:123289 发表于 2023-9-7 14:32 | 只看该作者
无论数组在不在MAIN里,它总是需要有地方放置的。请考虑你放的地方足够大吗?
回复

使用道具 举报

6#
ID:883242 发表于 2023-9-7 17:06 | 只看该作者
什么型号的单片机?换个容量大的。
回复

使用道具 举报

7#
ID:1092884 发表于 2023-9-11 16:04 | 只看该作者
如果数组非要这么大建议换个单片机
回复

使用道具 举报

8#
ID:1079566 发表于 2023-9-11 19:09 | 只看该作者
const 去掉试试...
回复

使用道具 举报

9#
ID:517951 发表于 2023-9-12 07:28 | 只看该作者
数组太大, 可以考虑将固定数值不变的内容放到25Q16这样的spi flash里面, 每次编译调试下载都快很多.
回复

使用道具 举报

10#
ID:77589 发表于 2023-9-12 14:54 | 只看该作者
ZSJM 发表于 2023-9-11 19:09
const 去掉试试...

程序区都放不下,数据区难道还放的下????
回复

使用道具 举报

11#
ID:77589 发表于 2023-9-12 14:57 | 只看该作者
使用const修饰定义的数据,都存放在程序区的。说明你使用的MCU FLASH小了,放不下你的程序和你定义的常量了。建议根据实际情况,重新选型MCU;或者外接Flash
回复

使用道具 举报

12#
ID:1079566 发表于 2023-9-13 11:03 | 只看该作者
Longan.Wang 发表于 2023-9-12 14:54
程序区都放不下,数据区难道还放的下????

我是怀疑不是数据大的问题,当然看不到程序,只能估...
回复

使用道具 举报

13#
ID:1093309 发表于 2023-9-13 11:21 | 只看该作者
超出存储大小
回复

使用道具 举报

14#
ID:71233 发表于 2023-9-13 11:38 | 只看该作者
很久以前用mplab ,现在都忘记了,如果使用const仍然出现数据量超出范围的话,多半是单片机的flash太小了。
回复

使用道具 举报

15#
ID:57657 发表于 2023-9-13 12:17 | 只看该作者
容量超了换大容量的单片机即可,寻址超了换更高位数的单片机,或加存储芯片扩展。
回复

使用道具 举报

16#
ID:1093453 发表于 2023-9-17 10:51 | 只看该作者
换个单片机
回复

使用道具 举报

17#
ID:883242 发表于 2023-9-17 18:43 | 只看该作者
ZSJM 发表于 2023-9-11 19:09
const 去掉试试...

你是不是只用过C51啊,在C51里面code是程序区,而大多数单片机编译器是用const来实现的。
回复

使用道具 举报

18#
ID:879348 发表于 2023-9-18 11:53 | 只看该作者
mplab?是pic单片机就是这样,CODE和RAM也是分页的,不能一次声明超一页,所以我一直说PIC单片机包括软件硬件很多坑
回复

使用道具 举报

19#
ID:1093999 发表于 2023-9-19 21:09 | 只看该作者
换个容量大点的单片机吧
回复

使用道具 举报

20#
ID:1093999 发表于 2023-9-19 21:11 | 只看该作者
可以看看换一个单片机
回复

使用道具 举报

21#
ID:219796 发表于 2023-9-20 08:36 来自手机 | 只看该作者
int xdata a 就可以把a放到片外存储,比如flash
回复

使用道具 举报

22#
ID:1093026 发表于 2023-9-20 10:52 | 只看该作者
目测超过了PIC ROM的section大小,要么拆分,要么换大容量的PIC单片机。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表