免费注册 查看新帖 |

Chinaunix

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

[函数] 如何使用printf函数跟踪函数指针? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-11-28 19:38 |只看该作者 |倒序浏览
请问谁知道如何使用printf函数,通过打印调试信息跟踪函数指针究竟执行到哪个函数了?
例如:

void test();

typedef void (*FUNPTR)();
FUNPTR f = test;

(*f)(); //怎么通过printf函数来知道是执行进入了test函数呢?
请高人指教!

论坛徽章:
0
2 [报告]
发表于 2006-11-28 19:42 |只看该作者
i386 上用 EIP,配合符号列表

不用 printf

论坛徽章:
0
3 [报告]
发表于 2006-11-28 19:44 |只看该作者
楼上能说的具体吗??? 怎么使用 具体的步骤?

论坛徽章:
0
4 [报告]
发表于 2006-11-28 19:45 |只看该作者
如果一定要用printf能否有办法呢??

论坛徽章:
0
5 [报告]
发表于 2006-11-29 10:48 |只看该作者
每个函数开头加个printf好了。。。

论坛徽章:
0
6 [报告]
发表于 2006-11-29 12:48 |只看该作者
原帖由 撒哈拉里的鱼 于 2006-11-29 10:48 发表
每个函数开头加个printf好了。。。

函数太多,根本没有办法每个都加.
难道真的就没有办法了吗???

论坛徽章:
0
7 [报告]
发表于 2006-11-29 12:54 |只看该作者
void test();

typedef void (*FUNPTR)();
FUNPTR f = test;

static void new_f ()
{
   printf ("f = %x\n", f);
   (*f) ();
}

#define f new_f

(*f)();
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP