你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

结构体指针初始化的问题

[复制链接]
watercici 提问时间:2018-6-1 11:05 /
阅读主题, 点击返回1楼
收藏 评论34 发布时间:2018-6-1 11:05
34个回答
watercici 回答时间:2018-6-1 11:38:53
lvpeng-1619958 发表于 2018-6-1 11:36
堆太小了吗?不会刚好差一个u8的大小吧?!

不是堆小的问题,因为我增大了也不行?
lvpeng-1619958 回答时间:2018-6-1 11:40:06
watercici 发表于 2018-6-1 11:38
还有我想问一下,malloc和BSS断没有关系吧,不是应该和堆有关系吗,因为我刚刚在网上看到的,BSS断不是与 ...

malloc分配的在堆当中,跟bss没有关系。程序编译完成 bss段就产生了,malloc运行之后才分配内存
andeyqi 回答时间:2018-6-1 11:40:18
watercici 发表于 2018-6-1 11:35
那我怎么看跟踪malloc这个函数呢,或者怎么看它的返回值,因为我找不到malloc这个函数的定义,但是我可以 ...

malloc不是在系统C库#include <stdlib.h>里面吗,没有源码先DEBUG时看下返回值看看是多少
andeyqi 回答时间:2018-6-1 11:42:08
watercici 发表于 2018-6-1 11:38
还有我想问一下,malloc和BSS断没有关系吧,不是应该和堆有关系吗,因为我刚刚在网上看到的,BSS断不是与 ...

BSS段难道不就是堆栈段吗
lvpeng-1619958 回答时间:2018-6-1 11:42:56
andeyqi 发表于 2018-6-1 11:42
BSS段难道不就是堆栈段吗

bss段在ram中啊,和栈是分开的
watercici 回答时间:2018-6-1 11:43:50
andeyqi 发表于 2018-6-1 11:42
BSS段难道不就是堆栈段吗

好像不是,我在网上查的他俩应该不是一个
zhao.zhao 回答时间:2018-6-1 11:48:53
可能栈空间不够大
andeyqi 回答时间:2018-6-1 11:49:04
本帖最后由 andeyqi 于 2018-6-1 11:51 编辑
watercici 发表于 2018-6-1 11:43
好像不是,我在网上查的他俩应该不是一个

不用太纠结这种概念性的东西,我说的BSS段指的是malloc对应的空间所谓的堆空间。
zhao.zhao 回答时间:2018-6-1 11:49:35
是堆空间不够大
watercici 回答时间:2018-6-1 11:51:31
andeyqi 发表于 2018-6-1 11:40
malloc不是在系统C库#include 里面吗,没有源码先DEBUG时看下返回值看看是多少  ...

关键是就是这里的问题,一执行到这里就进入中断了,无法查看返回值,如果有返回值,也就不会进入中断了。我知道是这里的问题,但是我不知道是什么原因,不知道怎么改。堆的大小增大了也没有用,还是会进入硬件中断。

所属标签

相似问题

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版