How do I check if an input argument is empty in a MEX file in MATLAB 7.10 (R2010a)?

I would like to check if an input argument is empty in a MEX file. This is similar to using the ISEMPTY function in MATLAB.

 Accepted Answer

The following command can be used to check if an argument is empty by checking if the dimension is zero.
if (mxGetM(prhs[i]) == 0 && mxGetN(prhs[i]) == 0)
mexErrMsgTxt("Empty argument.");

1 Comment

From the mxGetN documentation:
If pm is an N-dimensional mxArray, mxGetN is the product of dimensions 2 through N.
So, the above answer is not wrong for the usage of mxGetN( ). However, it is wrong as you point out for the usage of && ... it should be || instead.

Sign in to comment.

More Answers (0)

Categories

Products

Tags

No tags entered yet.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!