⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 6.htm

📁 VC与Matlab混合编程文章.
💻 HTM
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><!-- saved from url=(0054)http://passmatlab.myetang.com/matlab/matlabc1/m_c6.htm --><HTML><HEAD><TITLE>Matlab与C++接口与混合编程讨论小结(六)</TITLE><SCRIPT language=JavaScript src="6.files/pop-up.js"></SCRIPT><META http-equiv=Content-Type content="text/html; charset=gb2312"><META content="MSHTML 5.50.4522.1800" name=GENERATOR></HEAD><BODY text=#000000 bgColor=#ffffff><TABLE width="95%" border=0>  <TBODY>  <TR>    <TD width="5%">&nbsp;</TD>    <TD width="92%">      <DIV align=center><B><FONT size=4>Matlab与C++接口与混合编程讨论小结(六)       </FONT></B></DIV></TD>    <TD width="3%">&nbsp;</TD></TR>  <TR>    <TD width="5%">&nbsp;</TD>    <TD width="92%">      <P>  </P>      <P>  第二章、 </P>      <P>  第五节、用c编写mex程序[五] </P>      <P>  通过前面两部分的介绍,大家对参数的输入和输出方法应该有了基本的了解。具备了这       <BR>些知识,就能够满足一般的编程需要了。但这些程序还有些小的缺陷,以前面介绍的re       由于<BR>前面的例程中没有对输入、输出参数的数目及类型进行检查,导致程序的容错性很 </P>      <P>  #include "mex.h" void mexFunction(int nlhs, mxArray *plhs[], 讨论区       [Matlab]<BR>int nrhs, const mxArray *prhs[]) { double *inData; double       *outData; int M,N; //异<BR>常处理 //异常处理 </P>      <P>   if(nrhs!=1) mexErrMsgTxt("USAGE: b=reverse(a)\n");       if(!mxIsDouble(prhs[0]))<BR>mexErrMsgTxt("the Input Matrix must be       double!\n"); inData=mxGetPr(prhs[0]); M=m<BR>xGetM(prhs[0]);       N=mxGetN(prhs[0]); </P>      <P>   void mexFunction(int nlhs, mxArray *plhs[],       plhs[0]=mxCreateDoubleMatrix(M<BR>,N,mxREAL); outData=mxGetPr(plhs[0]);       for(i=0;iM;i++) for(j=0;j</P>      <P>   在上面的异常处理中,使用了两个新的函数:mexErrMsgTxt和mxIsDouble。MexErrMs<BR>gT       xt在给出出错提示的同时退出当前程序的运行。MxIsDouble则用于判断mxArray中的数据       <BR>是否double类型。当然Matlab还提供了许多用于判断其他数据类型的函数,这里不加详       述。<BR>需要说明的是,Matlab提供的API中,函数前缀有mex-和mx-两种。带mx-前缀的大多是对       mx<BR>Array数据进行操作的函数,如mxIsDouble,mxCreateDoubleMatrix等等。而带mx前缀       的则大<BR>多是与Matlab环境进行交互的函数,如mexPrintf,mxErrMsgTxt等等。了解了这       一点,对在<BR>Apiref.pdf中查找所需的函数很有帮助。       至此为止,使用C编写mex函数的基本过程已经介绍<BR>完了。下面会在介绍几个非常有用的       函数调用。如果有足够的时间,也许还会有一个更复杂<BR>一些的例程。 </P>      <P></P>      <P></P>      <P>&nbsp;</P></TD>    <TD width="3%">&nbsp;</TD></TR>  <TR>    <TD width="5%">&nbsp;</TD>    <TD width="92%">&nbsp;</TD>    <TD width="3%">&nbsp;</TD></TR></TBODY></TABLE></BODY></HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -