MATLAB和c++混编 调试相关内容
来源:互联网 发布:macbook rar解压软件 编辑:程序博客网 时间:2024/05/03 23:35
https://wenku.baidu.com/view/6fd2cf55cfc789eb162dc857.html?qq-pf-to=pcqq.c2c 原网址
在Matlab 中调试用C/C++编写的MEX 文件(32、64位机,VS2005和matlab R2010b) mex文件是matlab提供的与外部语言如C、C++提供的接口函数。可以在Matlab环境下编写一个*.m文件,来编译所定的C/C++文件,当然,这个C/C++文件的开头是有要求的。Mex函数有固定的自己的一套接口形式 以VS2005和matlab R2010b 7.11.0版本为例,C/C++文件在matlab编译格式为*.mexw32,准备好你的C/C++文件后:
[1]、matlab安装mex编译工俱 命令如: mex –setup 编译工具选择:VS2005;一路yes下来。最后,只要不报错就可以。
[2]、在matab环境中,编写编译文件compile_mex.m 把C/C++文件编译成*.mexw32文件时,要使用mex –g命令,产生具有调试信息的执行文件。而不是mex –o命令,后者 是不含调试信息的。
compile_mex.m文件内容如下;
function compile_mex(debug_flag) (看原文)
在命令行执行: debug_flag =’1’, compile_mex(debug_flag)
mex –g filename .c 生成了:filename .mexw32和filename.mexw32.pdb; 如果不需要产生调试信息: 在命令行做无参数执行: compile_mex 生成了:filename .mexw32,但没有生成filename.mexw32.pdb;
[3]、确定matlab打开。
[4]、VS2005设置: 打开VS2005,而后打开*.mexw32所对应的C/C++文件,不用建立新的工程。
找到“调试”或“工具”下拉项:attach to processor(附加到处理器),选择matlab.exe进程,确定即可。此时可以看到VS2005是处于运行状态的。
在C/C++文件中,就你所关心的程序处设置断点。
[5]、打开matlab下要运行的程序,先在matlab调用*.mexw32文件的那个地方设个观察断点。运行matlab程序。
[6]、matlab先停在你的matlab调用处,再继续执行程序。自动跟到VS2005中设定的断点。(自动从matlab跟入VS2005),可以使用单步,逐步,跳出等调试手段,还可以 把 变量添加到观察窗口,和VS2005下的操作雷同。但不具备所有功能。
[7]、按F5 运行完c++程序的剩余部分,并从VS回到MATLAB界面。
[注释]、*.mexw32文件,*.mexw32.pdb文件和C/C++源文件,*.m文件最好都放在一个文件夹下。
- MATLAB和c++混编 调试相关内容
- Matlab和C/C++混编调试
- matlab和C如何混编
- matlab和C如何混编
- MATLAB,C++混编,调试
- matlab 与C 混编时的联合调试
- c++matlab混编
- MATLAB和MFC混编
- mac下matlab和c混编的问题
- mac下配置进行c和matlab混编
- Matlab + VS | Matlab2014a + VS2010 Win7 混编调试
- OC和C混编
- TLD算法(matlab和vc混编版本)源代码调试运行
- WinDbg 本地调试和远程调试相关内容
- 关于matlab与C混编的问题
- 如何实现matlab与c/c++混编
- MATLAB调用c/c++ MATLAB c/c++混编
- VC和Matlab混编第一课
- 短按数字加减,长按数字清零
- Android工具类
- BIM数据库应用普遍存在的问题
- PHP好学吗?就业前景如何?
- ACdream 1740
- MATLAB和c++混编 调试相关内容
- rem的使用
- kylin学习(二)
- Android学习笔记五—简易新闻应用设计
- Universal 2nd Factor (U2F) 概述(6)-认证过程中的中间人攻击保护
- selenium函数
- HTTP版本
- Android环境下的GDB调试
- JS基础学习第一天:什么是JavaScript?