| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3387 人关注过本帖
标题:如何计算上面程序的返回地址?
只看楼主 加入收藏
珍珍
Rank: 1
来 自:广东
等 级:新手上路
帖 子:49
专家分:0
注 册:2008-10-13
收藏
得分:0 
2008-10-20 15:22
vfdff
Rank: 6Rank: 6
等 级:侠之大者
威 望:8
帖 子:2172
专家分:425
注 册:2005-7-15
收藏
得分:0 
我一直没有明白,为什么这 返回地址.jpg  引起这么多争议
刚才猛然才发现这个图有点不好,就是它刚显示了两个很接近的地址,我感觉有可能上面的讨论 就是由于这点没有清楚才导致的
红色方框中的地址当然就是真正的地址,也就是0x000000a0h 不会由争议
但是我其实说的是黄色方框中的地址,这个地址我个人感觉是 0x0a000000h
不好意思了,是我没有说清楚,因为我一直没有注意到 红色方框中的地址

返回地址.jpg (23.26 KB)
图片附件: 游客没有浏览图片的权限,请 登录注册

~~~~~~~~~~~~~~~好好学习~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2008-11-01 13:43
cnhanxiao
Rank: 2
等 级:新手上路
威 望:4
帖 子:124
专家分:0
注 册:2008-10-17
收藏
得分:0 
回复 12# 的帖子
编译得到目标文件,连接产生可执行文件。
目标文件不会有正确的地址。
而可执行文件,就有正确的相对地址了(根据文件头参数生成)。
你这样试试吧,去掉扩展名exe再看看。

光听你说返回地址了,你的程序问题多多啊:)
你想显示一个消息框,非要复杂地调用子程序,可子程序都没返回,只是其一。其二,利用堆栈为MessageBox函数传递参数,不说参数不够,最重要的是堆栈早被你的子程序调用破坏了。你自己观察一下堆栈变化吧。

[[it] 本帖最后由 cnhanxiao 于 2008-11-1 17:45 编辑 [/it]]

还有绑架成版主的?拒绝做版主——对不起啊!
2008-11-01 17:22
快速回复:如何计算上面程序的返回地址?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012264 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved