• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

STM32使用calloc分配内存,但没有使用free释放有没有影响?

韩梅梅 2021-02-23 浏览量:723
STM32使用calloc分配了一个内存,但没有使用free释放。关电重启能不能自动清除之前分配的内存?
或者说看门狗复位能不能自动清除之前分配的内存?
会不会重启或软件复位都不能清除之前申请内存,长期以往造成内存不够用申请内存失败?

0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 关电重启也不能确保一定释放,所以最好程序中先对堆初始化,自己可以做个测试,不初始化的时候malloc的地址是不是在变化。
    • 发布于 2021-02-26
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:3
  • 不释放的话,就会一直占用,如果还不停的申请,最后,会无法申请到,导致程序运行bug
    • 发布于2021-02-23
    • 举报
    • 评论 0
    • 0
    • 0

  • 关电可以释放,看门狗也可以释放,如果要长期存储只能使用外部ram,而且用rtc电池供电的ram
    • 发布于2021-02-23
    • 举报
    • 评论 0
    • 0
    • 0

  • 不释放就会越占越多了,最后,无法再申请成功了
    • 发布于2021-02-24
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

STM32使用calloc分配内存,但没有使用free释放有没有影响?