Main Content

C MEX ファイルでのエラー処理

C 行列 API の関数 mexErrMsgIdAndTxt は、エラー情報を出力して MEX 関数を終了します。関数 mexWarnMsgIdAndTxt は情報を出力しますが、MEX 関数を終了することはありません。

char *buf;
int buflen;

if (mxIsChar(prhs[0])) {
    if (mxGetString(prhs[0], buf, buflen) == 0) {
        mexPrintf("The input string is:  %s\n", buf);
    }
    else { 
        mexErrMsgIdAndTxt("MyProg:ConvertString",
           "Could not convert string data.");
        // exit MEX file
    } 
}
else {
    mexWarnMsgIdAndTxt("MyProg:InputString",
        "Input should be a string to print properly.");
}

// continue with processing

C++ 用の MATLAB データ APIで記述された C++ MEX 関数でのエラー処理の詳細については、入力と出力の処理を参照してください。

参考

|