自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 收藏
  • 关注

原创 为什么不能越界访问malloc分配的内存

之前在遇到了使用`malloc()`分配内存后,如果发生内存指针越界,则会导致下次使用`malloc()`分配内存失败的后果。但是,上次的`malloc()`函数调用,为何会影响到下次呢?这就要从`malloc()`的实现原理说起了。

2017-04-14 17:37:50 3039

原创 malloc函数分配内存失败的原因及解决方法

本文简单描述了malloc()函数分配内存失败的原因以及解决方法,对指针越界造成的分配内存失败做了详细探讨,对之后的内存管理及指针使用很有帮助。

2017-04-12 19:38:22 60257 11

转载 Keil调试局部变量显示"not in scope"的问题解决

Keil调试局部变量显示"not in scope"的问题解决    今天在调试程序的时候,发现函数返回值赋值给变量时,变量值总是显示"not in scope",无法看到变量被赋的值。    出现这种情况的原因是这个局部变量没被分配到内存,或者变量被编译器优化了。    编译器优化级别高的时候,编译器为了优化,可能并没有按照我们想要执行的代码汇编。

2017-04-10 10:22:21 2286 1

转载 再次理解STM32中的堆栈机制

STM32中的堆栈在启动文件中有初始设置,也可以根据需求调整大小,不同的类型的变量也会存储在内存的不同区域。因此,深入理解STM32中的堆栈机制,对于合理使用内存,以及更高效的内存管理至关重要。本文针对不同类型变量在内存中的存储位置,以及如何调整堆栈大小做了简单介绍。

2017-04-07 16:05:03 7958

原创 FreeRTOS中的堆栈设置”与“系统启动文件中堆栈”的关系

本文由之前系统堆空间分配所引发,简要分析了“FreeRTOS中的堆栈设置”与“系统启动文件中堆栈”的关系 ,并进行了初步测试。证明了二者在系统内存空间上互不影响的结论。

2017-04-07 15:53:32 6094 3

原创 STM32分配堆栈空间不足问题原因及解决方法

本文针对实践中STM32堆栈空间不足问题展开讨论。经过分析发现,如果动态内存分配需求过多时,需要手动调节堆空间。可以通过修改启动文件或在STM32CubeMX中也可对堆栈大小进行修改。并初步得出用户可以有使用的堆空间约占系统堆空间一半的结论。

2017-04-06 21:20:39 33873 11

转载 Keil中 Program Size: Code RO-data RW-data ZI-data 所代表的意思

在Keil中编译工程成功后,在下面的Bulid Ouput窗口中会输出下面这样一段信息:Program Size: Code=6320  RO-data=4864  RW-data=44  ZI-data=1636  代表的意思:Code :是程序中代码所占字节大小RO-data :程序中所定义的指令和常量大小 (个人理解 :Read Only)RW-data :程序中已初始化

2017-04-06 21:07:47 1185

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除