359
2770
8594
技术达人
使用特权
5
706
2126
初级工程师
huzi2099 发表于 2014-4-22 16:13 const数据类型不在内存里. 另外数组定义是不能在头文件里的,编译会出错.
huzi2099 发表于 2014-4-22 17:05 头文件不能产生任何形式的存储占用,只能extern
2
181
556
高级技术员
31
192
603
guet_new_man 发表于 2014-4-22 21:42 头文件为什么不能产生存储占用? 在头文件中定义宏、接口函数等,不都占用了flash空间么? ...
科技猎人 发表于 2014-4-23 09:04 不是不能,是最好不要这样做。不在头文件里定义变量不是C语言的语法规范,而是一种C程序员的编程规范。你 ...
huzi2099 发表于 2014-4-23 10:11 是不能,肯定报错
huzi2099 发表于 2014-4-23 10:10 宏不占用存储,宏只在文本替换后才起作用,这个过程最终还是要在.C中完成的,没有替换就没有用. 接口函数是 ...
科技猎人 发表于 2014-4-23 10:46 一般来说是肯定报错,重定义了呗。但是只有一个.c文件包含此头文件时也就没有重定义了,而且包含.c文件也 ...
guet_new_man 发表于 2014-4-23 15:00 除了第一句不敢苟同,其他讲的都很好,呵呵~
guet_new_man 发表于 2014-4-23 14:55 是否报错,具体要看编译器吧。 平时用IAR或者KEIL,虽然自己没在头文件中写过函数体,但像ARM提供的CMSI ...
huzi2099 发表于 2014-4-23 18:23 .c和.h的区别是编译还是扩展定义的区别,这也就是为什么.h不包含存储占用(代码或ram)的原因了. ...
发表回复 本版积分规则 回帖后跳转到最后一页
等级类勋章
发帖类勋章
时间类勋章
人才类勋章
7
扫码关注 21ic 官方微信
扫码关注嵌入式微处理器
扫码关注21ic项目外包
扫码关注21ic视频号
扫码关注21ic抖音号
本站介绍 | 申请友情链接 | 欢迎投稿 | 隐私声明 | 广告业务 | 网站地图 | 联系我们 | 诚聘英才 | 论坛帮助
京公网安备 11010802024343号