OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2787|回复: 4

内存管理的外部调用是什么意思

[复制链接]

69

主题

495

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2196
金钱
2196
注册时间
2015-11-14
在线时间
542 小时
发表于 2017-11-22 00:40:43 | 显示全部楼层 |阅读模式
1金钱
[mw_shl_code=c,true]//释放内存(外部调用)
//memx:所属内存块
//ptr:内存首地址
void myfree(u8 memx,void *ptr)  
{  
        u32 offset;   
        if(ptr==NULL)return;//地址为0.  
        offset=(u32)ptr-(u32)mallco_dev.membase[memx];     
    my_mem_free(memx,offset);        //释放内存      
}  
//分配内存(外部调用)
//memx:所属内存块
//size:内存大小(字节)
//返回值:分配到的内存首地址.
void *mymalloc(u8 memx,u32 size)  
{  
    u32 offset;   
        offset=my_mem_malloc(memx,size);                                
    if(offset==0XFFFFFFFF)return NULL;  
    else return (void*)((u32)mallco_dev.membase[memx]+offset);  
}  
//重新分配内存(外部调用)
//memx:所属内存块
//*ptr:旧内存首地址
//size:要分配的内存大小(字节)
//返回值:新分配到的内存首地址.
void *myrealloc(u8 memx,void *ptr,u32 size)  
{  
    u32 offset;   
    offset=my_mem_malloc(memx,size);          
    if(offset==0XFFFFFFFF)return NULL;     
    else  
    {                                                                            
            mymemcpy((void*)((u32)mallco_dev.membase[memx]+offset),ptr,size);        //拷贝旧内存内容到新内存   
        myfree(memx,ptr);                                                                                                            //释放旧内存
        return (void*)((u32)mallco_dev.membase[memx]+offset);                                  //返回新内存首地址
    }  
}[/mw_shl_code]
注释中的外部调用是什么意思?

最佳答案

查看完整内容[请看2#楼]

意思就是这些函数,外部不需要调用。 纯粹实现算法需要,而编写 的 你要用,用我们提供的需要外部用的函数就行了
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165536
金钱
165536
注册时间
2010-12-1
在线时间
2117 小时
发表于 2017-11-22 00:40:44 | 显示全部楼层
意思就是这些函数,外部不需要调用。
纯粹实现算法需要,而编写 的
你要用,用我们提供的需要外部用的函数就行了
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

3

主题

130

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3131
金钱
3131
注册时间
2017-3-2
在线时间
324 小时
发表于 2017-11-22 08:51:46 | 显示全部楼层
这些函数都没加static,如果在头文件中定义了这些函数就可以被其他的C文件调用,如果加了static就只能被当前的C文件调用
坚持不懈的努力!
回复

使用道具 举报

69

主题

495

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2196
金钱
2196
注册时间
2015-11-14
在线时间
542 小时
 楼主| 发表于 2017-11-22 18:49:09 | 显示全部楼层
meimengxing2014 发表于 2017-11-22 08:51
这些函数都没加static,如果在头文件中定义了这些函数就可以被其他的C文件调用,如果加了static就只能被当 ...

不是啊,这几个函数在工程里都没用过
回复

使用道具 举报

3

主题

130

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3131
金钱
3131
注册时间
2017-3-2
在线时间
324 小时
发表于 2017-11-22 21:28:46 | 显示全部楼层
单模先声 发表于 2017-11-22 18:49
不是啊,这几个函数在工程里都没用过

在你看的这个工程中可能没用到,其他的工程,比如:音乐播放,Emwin例程中有用到
坚持不懈的努力!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-9 05:39

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表