watercici 发表于 2018-6-1 11:52:32

zhao.zhao 发表于 2018-6-1 11:49
是堆空间不够大

可是我由0x200增加到0x400还是不行?难道再增大一点?

watercici 发表于 2018-6-1 11:55:51

andeyqi 发表于 2018-6-1 11:49
不用太纠结这种概念性的东西,我说的BSS段指的是malloc对应的空间所谓的堆空间。 ...

哦,好的,因为我对这些都不太明白,所以问的比较细,您别介意。

zhao.zhao 发表于 2018-6-1 12:04:04

要不,直接定义一个变量,RecordStruct OutData; 不要用指针了,肯定没问题

watercici 发表于 2018-6-1 12:36:55

zhao.zhao 发表于 2018-6-1 12:04
要不,直接定义一个变量,RecordStruct OutData; 不要用指针了,肯定没问题

因为我后续的函数参量都是指针类型,如果这样改,就得大改了,
您看下面这样改,行吗:
RecordStruct *OutData ,data;
*OutData = &data;

zhao.zhao 发表于 2018-6-1 13:15:53

RecordStruct *OutData ,data;
OutData = &data;
我觉得应该这样,可否?

Inc_brza 发表于 2018-6-1 13:34:58

先不说应该怎样做,我的疑问是,如果没有设置单字节对齐,你这个结构无论增加一个还是减少一个,都是60个字节,所以不应该出现你加多一个就挂了

watercici 发表于 2018-6-1 13:47:17

Inc_brza 发表于 2018-6-1 13:34
先不说应该怎样做,我的疑问是,如果没有设置单字节对齐,你这个结构无论增加一个还是减少一个,都是60个字 ...

是的,我没有设置单字节对其,我也不知道怎么设置,这个函数malloc是我直接调用的,所以出现这个问题,我也不知道怎么改?

lilei900512 发表于 2018-6-1 14:06:17

你有没有试着调整一下结构体内成员的顺序?

Inc_brza 发表于 2018-6-1 14:19:50

watercici 发表于 2018-6-1 13:47
是的,我没有设置单字节对其,我也不知道怎么设置,这个函数malloc是我直接调用的,所以出现这个问题,我 ...

如果可以,上传一下你的代码demo,如果你用lib里的malloc,heap_init这个函数有没有调用,如果没有,你单纯设置startup中的configuration是没用的。

watercici 发表于 2018-6-1 14:54:50

lilei900512 发表于 2018-6-1 14:06
你有没有试着调整一下结构体内成员的顺序?

这个顺序我认为是最佳的了,就是根据偶数字节的顺序安排下来的
页: 1 2 [3] 4
查看完整版本: 结构体指针初始化的问题