有没有办法检查从下面的代码(file1.o)生成的目标文件是否存在临时引入的编译器?我们可以使用什么工具从目标文件中获取此类信息?
//file1.cpp
void func(const int& num){}
int main(){ func(2); }
最佳答案
我能想到的最简单的方法是加载一个使用目标文件的程序并在调试器中反汇编该函数。您发布的程序代码适用于此。只需中断对 func
的调用,然后在单步执行该函数时显示汇编程序。
在更复杂的程序中,您通常可以按名称显示给定函数的汇编代码。检查您的调试器文档以了解如何执行此操作。在 Windows (Visual Studio) 上,您可以打开 Disassembly
窗口并输入函数名称以显示汇编代码。
如果您有源代码,大多数编译器都允许您输出汇编程序,有时会与源代码混合在一起。对于 Visual C++,这是 /Fa .
关于c++ - 我们可以检查目标文件中是否存在 C++ 编译器引入的临时文件吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4268087/