[問題] Matlab call C已回收

看板MATLAB作者 (kent)時間16年前 (2010/03/15 21:53), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串1/1
請問各位大大,小弟寫了一個MEX檔,complier沒問題,但是實際執行卻出事了 假設輸入為x=[5 1 1] ; y=[1 2 2] ;xo=[5 2 2] ;yo=[1 3 3] #include "mex.h" void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[]) { int gp,w,i,q; double *x,*y,*xo,*yo; x = mxGetPr(prhs[0]); y = mxGetPr(prhs[1]); xo = mxGetPr(prhs[3]); yo = mxGetPr(prhs[4]); q=mxGetN(prhs[0]); w=mxGetN(prhs[3]); plhs[0] = mxCreateDoubleMatrix(1,q,mxREAL); plhs[1] = mxCreateDoubleMatrix(1,q,mxREAL); x= mxGetPr(plhs[0]); y = mxGetPr(plhs[1]); gp=0; while (gp<q) { for(i=0;i<w;i++) {if (x[gp]==xo[i] && y[gp]==yo[i]) {x[gp]=0; y[gp]=0;} else {x[gp]=x[gp]; y[gp]=y[gp];} } } gp++; } 正常來說,我期望的輸出是x=[0 1 1] ;y=[0 2 2]但是我跑了以後陷進去了出不來了 請求各路好手支援一下感恩~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.46.197.40

03/16 12:37, , 1F
gp++ 在 while 外面 當然就陷進去出不來了...
03/16 12:37, 1F
文章代碼(AID): #1BdZlPqP (MATLAB)