2016-03-21 46 views
2

引擎API允许由C如何调试Matlab引擎C API?

http://www.mathworks.com/help/matlab/calling-matlab-engine-from-c-c-and-fortran-programs.html

使用MATLAB电话是什么调试接口的最佳做法?我们可以以某种方式“打开”由MATLAB IDE中的API创建的MATLAB会话并调试我们通过APIS发送给会话的MATLAB代码吗?

我可以将MATLAB代码状态打印到日志文件中进行调试,但效率不高。

+1

我会确保MATLAB方面的工作(单元测试与预期的投入);这完全可以在MATLAB中完成。对于C端来说,确保MATLAB API的输入只是预期的。 – zeeMonkeez

+0

@zeeMonkeez这是一个组合解决方案,虽然能够通过连接C和Matlab进行调试会更方便。 –

回答

0

白痴解决方案将打开gdb/visual studio并附加到正在运行的Matlab进程。如果你幸运的话,Matlab只需加载你的代码而不做任何改变,然后你可以像在任何其他程序中那样在代码中加入断点。

我以前用Visual Studio中的其他程序(不是matlab)完成了它,它让我惊讶于它的工作频率。

+0

这会让我们调试Matlab脚本吗?我认为gdb只能调试C代码,而不是我们通过engineEvalString发送给Matlab的脚本。 –

+0

对不起,您的问题不清楚您想做什么。如果你只是想调试matlab代码,为什么不使用标准的matlab调试器? – jforberg

+0

在linux中,C引擎API创建了一个不同的matlab会话。我不确定如何在Matlab调试器中查找或打开该会话。 –