RT-Thread学习笔记(7)- 堆的初始化和使用

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/m0_37697335/article/details/83352954

对于这部分课程的学习,主要使用的是RTT的API函数进行操作。

对于堆的空间大小,是需要自己分配大小的,以STM32为例,下图标出了堆的设置大小:

 

下面聊聊RT-Thread的API。

1、rt_system_heap_init((void *)HEAP_BEGIN, (void *)HEAP_END); 使用堆栈前必须用这个函数(在rt_config.h上声明宏)。

#ifdef RT_USING_HEAP
    rt_system_heap_init((void *)HEAP_BEGIN, (void *)HEAP_END);
#endif

2、rt_malloc() ,填入你需要的字(32bit,4个字节)个数,然后返回分配后空间的指针。

void *rt_malloc(rt_size_t size)

3、rt_realloc(),用于给已经被分配内存补充分配内存。

4、rt_free(), 所有的动态内存分配使用完后,都要使用这个函数分配。

猜你喜欢

转载自blog.csdn.net/m0_37697335/article/details/83352954
今日推荐