作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
谁能指导我如何构建c代码的调用树如果有人可以建议我任何开源工具我使用过func_tree但它没有显示宏函数调用和宏下的函数......??? ??
最佳答案
就在编译代码之前,C 预处理器会扩展所有宏。这意味着即使编译器也看不到宏定义。对您来说不幸的是,这意味着不可能在函数调用跟踪中包含宏。
根据您对运行时环境的了解程度,有时您可以从堆栈中的当前位置反算堆栈跟踪帧的位置。不幸的是,这通常是一种技巧,具体细节仅适用于一种环境。您需要为每个环境重新执行堆栈语义的发现。 Here is project that performs such a technique ,但无法知道它是否对您很有用。
请注意,这种技术可能也不会显示任何内联编译器,因为当编译器将等效的功能代码放入调用 block 时,函数调用会被重写为不存在。
如果您在 Google 上找不到适合您的特定环境的类似项目,那么您很可能必须自己编写一个项目。如果这超出了您的能力范围,您需要调查是否值得了解您环境的低级详细信息,或者执行更强大的日志记录是否更好。
关于c - 如何将c代码的函数调用树转储到文件中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9230454/
我正在为我的应用程序使用 Tank-Auth。我唯一的问题是激活和重置帐户密码。 用于登录、注册、注销;我对这些代码没有问题; $route['login'] = "/auth/login"; $ro
我是一名优秀的程序员,十分优秀!