论坛» 嵌入式开发» MCU

问个hew编译的问题

菜鸟
2008-06-03 09:00 1楼
在代码中,全局变量需要占用ram空间,但是,有的申请了但是从没有使用过,请问能不能让编译器忽略未被使用的全局变量?
菜鸟
2008-06-03 09:30 2楼
试了一下,我这里似乎定义为static型即可
你可以自己确认一下
菜鸟
2008-06-03 10:37 3楼

static类型只能在本文件使用,但是要使用具有外部链接类型的,在其他头文件用extern声明了,但是没有被使用。

工程师
2008-06-03 14:44 4楼

不是很了解

菜鸟
2008-06-03 21:20 5楼
针对不同芯片,编译器是不同的。

例如,对于SuperH单片机的编译器SHC v9.0,
不管声明时有没有赋初值,被外部引用的、程序中未使用的全局变量都会被优化掉(使用默认优化设置)。

假如您用的是其他系列单片机及配套编译器,应该也可以实现类似的优化功能。
具体情况还是要看编译选项中关于优化的部分。

一般来说,程序中全局变量还是少些为好,安全。
菜鸟
2008-06-04 09:07 6楼
shiley,多谢了,我搜索了每个变量,没用的手动删除了
共6条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册]