我正在维护别人的代码。该代码使用GCC 4.4.3在Linux平台上用C语言编写。然而,这段代码跳来跳去,很难找出所有函数被调用的地方。
在Visual Studio中,有一个名为“调用层次结构”的功能,可以显示函数从哪里调用和被调用。Emacs(23.1.1)是否有类似的功能?
我正在维护别人的代码。该代码使用GCC 4.4.3在Linux平台上用C语言编写。然而,这段代码跳来跳去,很难找出所有函数被调用的地方。
在Visual Studio中,有一个名为“调用层次结构”的功能,可以显示函数从哪里调用和被调用。Emacs(23.1.1)是否有类似的功能?
经典的Emacs跳转调用方式是使用TAGS
文件,并使用M-.命令。我建议在项目的根目录中使用以下命令使用Exuberant C Tags:
ctags -e --c-kinds=+pxd -R .
visit-tags-table
,您就可以打开TAGS文件。使用M-.可以跳转到每个定义或调用关键字的位置。使用C-uM-.跳转到另一个出现位置。使用C-xzzz等来重复查找。find-grep
来搜索关键字的出现位置。