一道c语言题

efim520 2014-03-07 07:10:18
编写一个调用地址0x00456a00的函数
...全文
328 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
leaf_home 2014-04-22
  • 打赏
  • 举报
回复
1、定义一个函数指针 2、给该函数指针赋值0x00456a00 3、通过该函数指针调用函数 typedef void (*p_fun_t)(void); void fun() { p_fun_t p_fun = 0x00456a00; p_fun(); return ; }
Vince蓝 2014-04-19
  • 打赏
  • 举报
回复
引用 4 楼 iikoking 的回复:
先把这个地址给一个函数指针 然后调用这个这个函数就可* *(void (*func)(void)(0x00456a00))
假设0x00456a00是一个不接受参数,返回值为void的函数指针 ( * ( (void (*)(void)) 0x00456a00 ) )();
acegimo 2014-04-19
  • 打赏
  • 举报
回复
好久没有接触C的东西了,同求啊
__kuroky 2014-04-18
  • 打赏
  • 举报
回复
先把这个地址给一个函数指针 然后调用这个这个函数就可* *(void (*func)(void)(0x00456a00))
zjk2752 2014-03-14
  • 打赏
  • 举报
回复
int fun() { char *p = (char *)0x00456a00; return *p; }
老衲不服 2014-03-08
  • 打赏
  • 举报
回复
没有这样做过在不同的程序中,看到的地址是不一样的 可以这样试试 首先定义 指针类型 例如: typedef void (*fun_type)(void *); char *p = 0x00456a00; fun_type call_fun; call_fun = (fun_type)p; call_fun(); 要注意函数的类型,这里举例是 void fun(void);

23,116

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧