打印

增加变量占用的空间

[复制链接]
374|16
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
huwr|  楼主 | 2020-4-5 14:35 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
有没有朋友遇到定义的变量用PICC编译器编译后在输出窗口没有看到RAM会增加变量占用的空间?

使用特权

评论回复
沙发
chenjunt| | 2020-4-5 14:40 | 只看该作者

什么意思?不是很明白你说的什么,能再解释一下这个现象吗

使用特权

评论回复
板凳
huwr|  楼主 | 2020-4-5 14:42 | 只看该作者
也就是多定义一个变量和少定义一个变量,不影响下图中的 data space  值, 知道的朋友告知下

使用特权

评论回复
地板
huwr|  楼主 | 2020-4-5 14:45 | 只看该作者

使用特权

评论回复
5
huwr|  楼主 | 2020-4-5 14:51 | 只看该作者

你有什么打算呢?或者你想知道什么?

使用特权

评论回复
6
huwr|  楼主 | 2020-4-5 14:53 | 只看该作者
发现所有定义的变量都没有使用( 。。。 is not used ),是编译器哪里设置错误呢?

使用特权

评论回复
7
chuxh| | 2020-4-5 14:56 | 只看该作者
以前呢

使用特权

评论回复
8
huwr|  楼主 | 2020-4-5 14:59 | 只看该作者
以前没有没有出现这个问题
有没有朋友知道的?

使用特权

评论回复
9
supernan| | 2020-4-5 15:03 | 只看该作者
是不是优化掉了

使用特权

评论回复
10
pangb| | 2020-4-5 15:08 | 只看该作者
或者光定义没使用

使用特权

评论回复
11
kangzj| | 2020-4-5 15:13 | 只看该作者
没使用不会分配呀

使用特权

评论回复
12
huwr|  楼主 | 2020-4-5 15:17 | 只看该作者
定义变量就应该占有内存的,只有声明才不会占用内存,怎么一定要使用了才有?

使用特权

评论回复
13
huwr|  楼主 | 2020-4-5 15:22 | 只看该作者
我也是在使用变量后才发现占有内存的。

使用特权

评论回复
14
wenfen| | 2020-4-5 15:25 | 只看该作者
在程序中,没有对程序逻辑起作用的变量,会被编译器优化掉。

使用特权

评论回复
15
tian111| | 2020-4-5 15:31 | 只看该作者
比如你在程序中,给变量a赋值1(a = 1;),但在程序中不做任何逻辑判断,它是直接被编译器优化掉。这句赋值语句在编译时,直接被编译器无视了

使用特权

评论回复
16
huwr|  楼主 | 2020-4-5 15:36 | 只看该作者

好的,我明天去单位试一下,多谢各位大侠了哈        

使用特权

评论回复
17
CoolSilicon| | 2020-4-7 09:38 | 只看该作者
1. 你是定义的局部变量还是全局变量?
2. 如果只是定义而已, 没有其他的地方调用, 或者只是简单的调用并不产生任何实质性的意义, 编译器会自动把它优化掉. 其实, 只要改一下XC8编译器的设置, 让它工作的lite或者free模式, 就不会优化掉了..

使用特权

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

本版积分规则

780

主题

8627

帖子

5

粉丝