关于内存管理 C语言的问题

2019-03-23 17:50发布

if(!mallco_dev.memmap[memx][offset])cmemb++;//连续空内存块数增加
这句话我看不懂,怎么memmap是个二维数组了
u16 *memmap[SRAMBANK];   
这是前面定义的,是个数组指针
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
18条回答
okwh
2019-03-25 10:27
本帖最后由 okwh 于 2017-1-27 13:09 编辑
大家都是好朋友 发表于 2017-1-26 15:45
比如字节对齐,我C语言没见过,51汇编也没见过。
它是伪代码吧?

51是8位,本身就是字节对齐的,也只可能是,更多如处理16、24、32位就需要自己编程处理。
32机如ARM正好不一样,32位下有处理8/16/24/32/64等各种可能需要,就有了各种让步平衡取舍。
其实还有直接间接位操作、还有大端小端......  至于PC机里面如何对齐排列,不让自己管,一切编译器代劳了。
基本原理、宏观结构、细节处理,学习要分层,不然混为一潭,不但容易晕,也让人无法回答。
计算机这种行当相关学习的麻烦之一就是 有时候不知道是学或在学遥控器操作、还是在学电视机内部制造、还是在学单晶硅提炼........

一周热门 更多>