查看某段代码或语句的被调用路径的方法小结

在看代码时,难免想要知道它是最开始在哪里被调用至此的,或者本段代码是否会被调用.但是由于程序比较复现,各种宏定义,导致很难通直接阅读的方式确认它的被调用路径.平时个人比较喜欢用以下几种方法来确认其调用路径:

1, 遇到有宏定义不确认其是否真的有定义时,

    直接在此定义后的代码处加了一些字符,然后编译一下;如果能编译过去,则说明此宏有定义;否则没有定义.

    比如如下的一段字符就加在了宏定义的后面,然后再编译;如果编译成功,则说明"__POWERON_BT_SCAN__"是没有被定义的,它下面的代码也就不会被执行;

 

2, 能过加backtrace:

比如如下的函数,在程序中由于各种重新定义,多外调用等问题,很难直观上确认它的调用路径.如果在其后面加上backtrace()接口,

那么,在执行起来的,通过addr2line工具可以直接确认它的调用路径.

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值