Skip to content

Instantly share code, notes, and snippets.

Last active Dec 17, 2015
What would you like to do?
narginchk() for Matlab <2011b
function narginchk(minargs, maxargs)
if (nargin ~= 2)
error('%s: Usage: narginchk(minargs, maxargs)',upper(mfilename));
elseif (~isnumeric (minargs) || ~isscalar (minargs))
error ('minargs must be a numeric scalar');
elseif (~isnumeric (maxargs) || ~isscalar (maxargs))
error ('maxargs must be a numeric scalar');
elseif (minargs > maxargs)
error ('minargs cannot be larger than maxargs')
args = evalin ('caller', 'nargin;');
if (args < minargs)
error ('not enough input arguments');
elseif (args > maxargs)
error ('too many input arguments');
Copy link

MarcelTh commented Nov 18, 2013

Hi Hagen,

thanks for this contribution - it helped me to run some scripts on older MATLAB installations.
I was a bit curious to see "!=" for the 'not equal' checks, as MATLAB syntax requires "~=" (at least in my R2010b version).
Had to change the script accordingly to make it run...



P.S.: my forked and working for me version here:

Copy link

hagenw commented Dec 2, 2013

Hi Marcel,

thanks, I corrected it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment