初级会员

- 积分
- 62
- 金钱
- 62
- 注册时间
- 2019-6-3
- 在线时间
- 17 小时
|
6金钱
定义了一个数据结构
typedef struct
{
uint8_t data_len;
uint8_t *data_value;
}serial_report_t;
然后初始化的时候定义成全局变量
serial_report_t serial_report;
然后在某个函数中开辟了内存空间
serial_report.data_value = (uint8_t *)malloc(msg_len);
msg_len是收到的数据长度,
现在有两个问题请教一下:1。现在在其它的函数中释放这个内存,这样操作是否可行,应该注意什么问题
2。如果不释放这个内存是不是有影响呢
主要不理解的或者不知道的是 全局变量 它是一个栈,然后数据结构中的指针开辟了内存,那它应该是属于堆,堆应该要释放,然后就很混乱,不知道如果处理了,然后代码运行后有时候会报错 内容为 ASSERT func vProtFree line 371 |
|