免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2719 | 回复: 2
打印 上一主题 下一主题

编译器对内存的不同行为不知是什么原因,急~ [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-10-28 17:14 |只看该作者 |倒序浏览
请教下大家:

有没有遇到过内存对齐造成的不同对象的空间地址相互侵占的情况哈~;也可能是定义宏造成的~
目前我这边遇到了,而且是:
而且加的宏是在sources(这个文件相当于makefile的);用-D的方式加宏SD_RELEASE,但是那个宏SD_RELEASE在实际代码中还未起作用的;就导致了不一样的效果的
我觉得是
用这种方式传宏进入就造成了编译器对原来的内存布局进行了优化;而那两个对象其中一个或者两个恰好被优化到了的

具体原因大家帮看看哈,多谢了~

论坛徽章:
0
2 [报告]
发表于 2011-10-29 00:37 |只看该作者
没看懂,支持一下,觉得一般情况编译器都会读代码进行优化,除非是用了volatile修饰

论坛徽章:
2
摩羯座
日期:2013-10-10 14:29:04天蝎座
日期:2014-01-03 09:14:49
3 [报告]
发表于 2011-11-03 10:47 |只看该作者
如果部分代码定义了宏,而另外部分没有定义,岂不是会导致程序逻辑不正确?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP