在阅读大量代码时,比如linux内核。要找到一个函数在哪里定义是很困难的,有时候,一个函数就是1个宏、或者一段汇编。要想找出来真是不易,相信你也有深刻体会。
找不到函数定义,该怎么办呢?
其实有个方法很简单。
就是再定义1个名字一样的函数,在链接时,编译器就会报错,说重复定义。
此时,编译器会将重复定义的地方都列出来。
这时候,不就找到了么,就这么简单。
本文介绍了一种实用的方法来定位难以查找的函数定义位置。通过在项目中重新定义相同的函数名,利用编译器的错误报告来揭示原始函数的定义位置。
在阅读大量代码时,比如linux内核。要找到一个函数在哪里定义是很困难的,有时候,一个函数就是1个宏、或者一段汇编。要想找出来真是不易,相信你也有深刻体会。
找不到函数定义,该怎么办呢?
其实有个方法很简单。
就是再定义1个名字一样的函数,在链接时,编译器就会报错,说重复定义。
此时,编译器会将重复定义的地方都列出来。
这时候,不就找到了么,就这么简单。

被折叠的 条评论
为什么被折叠?