首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
要对绝对地址0x100000赋值,我们可以用 (unsign
[问答题]
要对绝对地址0x100000赋值,我们可以用 (unsigned int*)0x100000 = 1234; 那么要是想让程序跳转到绝对地址是0x100000去执行,应该怎么做?
查看答案及解析
添加笔记
求解答(6)
邀请回答
收藏(42)
分享
纠错
4个回答
添加回答
1
IT打工人
(void(*)(void))0x100000();
//把0x1000000强制转换为函数指针,函数指针的地址
为0x100000,对函数指针初始化,再调用就可以实现跳转到0x100000处执行了
//函数指针可以通过函数调用跳转到指定的地址
发表于 2021-07-22 20:24:33
回复(0)
0
月儿弯wan
这个题本身就有问题:
要对绝对地址0x100000赋值,我们可以用 *
(
unsigned int*)0x100000 = 1234;
那么要是想让程序跳转到绝对地址是0x100000去执行,应该
*((void(*ptr)())0x100000)();
发表于 2019-07-23 07:26:33
回复(1)
0
Daotin
*( (void(*)())0x100000 )();
发表于 2016-03-09 09:30:22
回复(1)
0
荷兰奶牛
*((void (*)( ))0x100000 ) ( ); 首先要将0x100000强制转换成函数指针,即: (void (*)())0x100000 然后再调用它: *((void (*)())0x100000)(); 用typedef可以看得更直观些: typedef void(*)() voidFuncPtr; *((voidFuncPtr)0x100000)();
发表于 2014-11-15 12:44:45
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
C++
华为
上传者:
LinkAge
难度:
4条回答
42收藏
11917浏览
热门推荐
相关试题
运行 ldd hello 可以得到...
百度
C++
评论
(3)
如图 1 表示使用快表(页表)的虚...
编程基础
评论
(1)
对于我们来说,谁是好的顾客?
销售常识
评论
(1)
MySQL中执行 SELECT I...
SQL
评论
(1)
订单表order_table全部记...
查找
数据库
数据分析
SQL
评论
(2)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题