我可以在没有main()函数的情况下调试(逐步执行)代码吗?

时间:2017-07-04 20:35:39

标签: c++ debugging code-analysis

假设我想通过使用调试器单步执行代码来了解更大的项目。是否可以在任意点跳入(假设我定义了正确的变量)?如何调试没有main的库?

2 个答案:

答案 0 :(得分:4)

要调试库中的代码,请编写一个小应用程序(具有main())来调用需要调试的库中的函数。然后调试该应用程序并进入库调用它。

至于“跳进任意位置” - 好吧,你可以指示调试器将指令指针移动到你喜欢的地方,但这通常不是你想要的,因为你是缺少很多状态,程序的前几部分将创建。通常你想要做的是在你感兴趣的函数中设置一个断点,然后正常运行程序,直到遇到断点。

答案 1 :(得分:0)

最好的方法是按原样运行应用程序,并在需要时设置断点。问题是该程序可能会进行大量的初始化和其他事情,这是你无法弄清楚的 另一种方法是寻找单元测试。它们就像小程序本身只针对程序的特定部分。