关于内存管理疑惑

2019-08-17 06:06发布

本帖最后由 pcqboys 于 2017-6-23 14:06 编辑

1.#define MEM1_MAX_SIZE 40*1024 //最大管理内存 40K”    MEM1_MAX_SIZE/MEM1_BLOCK_SIZE==1250  
为什么是1250 ,而不是40*1024/32=1280??

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
16条回答
lc881214
1楼-- · 2019-08-17 12:00
1 没看懂,上代码
2 那是定义的u8指针,为什么一定要u32呢?
pcqboys
2楼-- · 2019-08-17 12:35
 精彩回答 2  元偷偷看……
lc881214
3楼-- · 2019-08-17 13:34
pcqboys 发表于 2017-6-23 10:58
内部内存池拿出 40K作为最在内存  然后把内存块按32字节 /块来划分  
MEM1_MAX_SIZE/MEM1_BLOCK_SIZE => ...

1 没有找到你说的1250的代码,我这边代码是对的。
2 u8是指针指向的数据类型,和你说的地址是两个概念。
pcqboys
4楼-- · 2019-08-17 16:08
lc881214 发表于 2017-6-23 11:04
1 没有找到你说的1250的代码,我这边代码是对的。
2 u8是指针指向的数据类型,和你说的地址是两个概念。

p是u8类型  但返回的数据是内存的地址值是32位的  我觉得这样赋值会有问题
pcqboys
5楼-- · 2019-08-17 18:45
lc881214 发表于 2017-6-23 11:04
1 没有找到你说的1250的代码,我这边代码是对的。
2 u8是指针指向的数据类型,和你说的地址是两个概念。

p是u8类型  但返回的数据是内存的地址值是32位的  我觉得这样赋值会有问题
pcqboys
6楼-- · 2019-08-17 22:18
lc881214 发表于 2017-6-23 11:04
1 没有找到你说的1250的代码,我这边代码是对的。
2 u8是指针指向的数据类型,和你说的地址是两个概念。

你有没有看过原子的战舰开发板的内存管理代码

一周热门 更多>