?? exm120153_1.cpp
字號:
#include "mex.h" // <1>
#include "string.h" // <2>
//-------------------------------------------------
void stringplus(char *input_buf0,char *input_buf1,char *output_buf)
{
strcat(output_buf,input_buf0);
strcat(output_buf,input_buf1);
}
//-------------------------------------------------
void mexFunction(int nlhs,mxArray *plhs[], int nrhs,const mxArray *prhs[]) //<10>
{
char *input_buf0,*input_buf1,*output_buf; //
int buflen,buflen0,buflen1,status; //
if (nrhs!=2) // <13>
mexErrMsgTxt("Two inputs inquired."); //<14>
else if (nlhs>1) // //<15>
mexErrMsgTxt("Too many output arguments."); //<16>
if (mxIsChar(prhs[0])!=1||mxIsChar(prhs[1])!=1) // <17>
mexErrMsgTxt("Inputs must be a string.");
if (mxGetM(prhs[0])!=1||mxGetM(prhs[1])!=1) // <19>
mexErrMsgTxt("Inputs must be a row vector.");
buflen0=(mxGetM(prhs[0])*mxGetN(prhs[0]))+1; //<21>
buflen1=(mxGetM(prhs[1])*mxGetN(prhs[1]))+1; //<22>
buflen=buflen0+buflen1-1; //
input_buf0=(char *)mxCalloc(buflen0,sizeof(char));
//
//
input_buf1=(char *)mxCalloc(buflen1,sizeof(char));
output_buf=(char *)mxCalloc(buflen,sizeof(char));
//
status=mxGetString(prhs[0],input_buf0,buflen0); //<30>
if (status!=0) //
mexWarnMsgTxt("Not enough space,String is truncated.");
//
status=mxGetString(prhs[1],input_buf1,buflen1); //<34>
if (status!=0) //
mexWarnMsgTxt("Not enough space,String is truncated.");
stringplus(input_buf0,input_buf1,output_buf); //
//
plhs[0]=mxCreateString(output_buf); //<39>
return;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -