打印
[复制链接]
1835|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
hwt1990114|  楼主 | 2014-11-3 19:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我把数组定义在局部函数中,编译就会报错,把它设置成全局变量,就不会报错
沙发
lcofjp| | 2014-11-3 20:09 | 只看该作者
1. 要贴出错误提示;
2. 要贴出部分代码。

使用特权

评论回复
板凳
谈的元| | 2014-11-4 23:31 | 只看该作者
看楼上

使用特权

评论回复
地板
Rain_King| | 2014-11-4 23:40 | 只看该作者
看2楼,其次,PIC单片机一般都是硬件栈,定义太大的数组,估计很难.............

使用特权

评论回复
5
wuhenyouyu| | 2014-11-5 12:52 | 只看该作者
Rain_King 发表于 2014-11-4 23:40
看2楼,其次,PIC单片机一般都是硬件栈,定义太大的数组,估计很难............. ...

硬件堆栈是产生中断时候才用的,和定义数组大小有什么关系?

使用特权

评论回复
6
Rain_King| | 2014-11-5 22:22 | 只看该作者
wuhenyouyu 发表于 2014-11-5 12:52
硬件堆栈是产生中断时候才用的,和定义数组大小有什么关系?

局部变量都保存在栈上的...PIC没有软件栈(这里有点不太确定,应该是没有软件栈),那么也就是硬件栈了...

使用特权

评论回复
7
wuhenyouyu| | 2014-11-5 23:00 | 只看该作者
Rain_King 发表于 2014-11-5 22:22
局部变量都保存在栈上的...PIC没有软件栈(这里有点不太确定,应该是没有软件栈),那么也就是硬件栈了.. ...

你一说,我还真想起来了,临时变量都保存在bank0,它的大小是固定的!一般都是把大数组定义为全局变量,基本没有定义局部变量的,除非用C++等高级语言。不过有个解决办法,在函数中动态建立数组,操作完再收回。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

16

主题

51

帖子

1

粉丝