完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛扫一扫,分享给好友
|
用内部的FLASH作为DATAFALSH存入uint32_t TestData1[] = {1,2,3,4, 5,6,7,8,9, 10,11,12,13,14, 15,16,17,18};此数组,调试查看Memory1相关地址时,发现数据不是18*4=72个字节,而是在后面自动补上了8个00的数据,共是80个字节,这是怎么回事呢?
请教各位大神了。 谢谢! |
|
相关推荐
1个回答
|
|
|
这可能是由于编译器或芯片的内部存储结构所导致的。
在某些芯片中,数据存储在内存中的物理地址可能需要按照一定的规则对齐,例如以4字节为单位对齐。因此,当您存储一个4字节的数据时,系统可能会自动填充额外的字节,以保持对齐。 此外,编译器也可能会在数组结构中添加一些元数据,例如数组的大小和位置等,以便在程序运行时更方便地访问和操作数组。这可能会导致实际占用的内存空间比您的数据本身所占用的空间更大。 综合以上两个因素,可能会导致您观察到的数据占用的空间比您预期的要多。这个额外的空间通常不会对程序的执行产生影响,但是请注意在编写程序时考虑到这些因素可能会产生的额外空间占用。 |
|
|
|
|
只有小组成员才能发言,加入小组>>
1058 浏览 1 评论
1881 浏览 0 评论
1859 浏览 1 评论
3283 浏览 5 评论
3610 浏览 9 评论
1061浏览 1评论
1884浏览 1评论
如何知道嵌入式电子控制单元 (ECU) 中的RAM使用情况?
1389浏览 1评论
1884浏览 0评论
1204浏览 0评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-10 23:31 , Processed in 0.523697 second(s), Total 46, Slave 36 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
505