我仿真调试,发现如图:
说明这个alloc函数出错了,检查一下程序的.s文件,里面有个Heap_Size,就是堆的大小,如果申请的内存超过堆的大小,那就会跳转到hardfault
程序中所有的动态局部变量,还有alloc的,都是需要放到堆里面的