freesacle codewarrior中C编程问题

2019-03-26 08:06发布

看到一位大牛在定义一个数组时这样定义的:V_MEMROM0 V_MEMROM1 unsigned char  V_MEMROM2 CanTxId2[kCanNumberOfTxObjects] ;

不知道加上V_MEMROM0和V_MEMROM1 是什么意思
其中声明是:#ifndef V_MEMROM1
    # define V_MEMROM1                 /* fast data access in ROM */
   #endif

不太明白什么意思?求教 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
2条回答
cuiwei000
1楼-- · 2019-03-26 15:10

补充一下,mcu是mcs8DZ60

 

clarionkw
2楼-- · 2019-03-26 18:20

V_MEMROM0和V_MEMROM1 和处理器没有关系,他们是宏,用来指定定义的数据存放在什么类型的存储段。

具体实现方式:肯定源代码中有一些关于V_MEMROM0和V_MEMROM1的操作,可能在某个或者一些列头文件里,自己全局搜索一下,

在编译预处理和编译阶段,编译器会根据这些宏和对应的操作,将定义的数据归类,比如数据段1、数据段2、代码段1、代码段2等等,

最后在链接阶段合成完整的可执行文件

一周热门 更多>