打印
[PIC®/AVR®/dsPIC®产品]

MPLAB + PICC9.83编译器遇到的问题

[复制链接]
1499|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
有没有朋友遇到定义的变量用PICC编译器编译后在输出窗口没有看到RAM会增加变量占用的空间?也就是多定义一个变量和少定义一个变量,不影响下图中的 data space  值, 知道的朋友告知下



PICC.jpg (85.53 KB )

PICC.jpg
沙发
andy520520|  楼主 | 2018-11-9 09:58 | 只看该作者
发现所有定义的变量都没有使用( 。。。 is not used ),是编译器哪里设置错误呢?
以前没有没有出现这个问题
有没有朋友知道的?

使用特权

评论回复
板凳
Cjy_JDxy| | 2018-11-10 10:50 | 只看该作者
是不是优化掉了,或者光定义没使用

使用特权

评论回复
地板
兰天白云| | 2018-11-14 13:32 | 只看该作者
没使用不会分配呀

使用特权

评论回复
5
andy520520|  楼主 | 2018-11-25 17:44 | 只看该作者
Cjy_JDxy 发表于 2018-11-10 10:50
是不是优化掉了,或者光定义没使用

定义变量就应该占有内存的,只有声明才不会占用内存,怎么一定要使用了才有?我也是在使用变量后才发现占有内存的。

使用特权

评论回复
6
ButIAlwaysTry| | 2018-11-29 09:54 | 只看该作者
andy520520 发表于 2018-11-25 17:44
定义变量就应该占有内存的,只有声明才不会占用内存,怎么一定要使用了才有?我也是在使用变量后才发现占 ...

在程序中,没有对程序逻辑起作用的变量,会被编译器优化掉。
比如你在程序中,给变量a赋值1(a = 1;),但在程序中不做任何逻辑判断,它是直接被编译器优化掉。这句赋值语句在编译时,直接被编译器无视了。

使用特权

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

本版积分规则

31

主题

384

帖子

5

粉丝