Variable Number of Arguments

5 Ansichten (letzte 30 Tage)
Abdul Hanan Wali
Abdul Hanan Wali am 22 Jun. 2022
Kommentiert: Image Analyst am 22 Jun. 2022
following is a function which unable to run in my matlab. Kindly repair the problem and tell me.
function out = print_num(format, varagin)
out = ' ' ;
argindex = 1;
skip = false;
for ii = 1: length(format)
if skip
skip = false;
else
if format(ii) ~= '%'
out(end+1) = format(ii);
else
if ii + 1> length(format)
break;
end
if format(ii+1) =='%'
out(end+1) ='%';
else
if argindex >= nargin
error(' not enough input arguments');
end
out = [ out num2str(varagin{argindex},format(ii:ii+1))];
argindex = argindex +1;
end
skip = true;
end
end
end
end
  1 Kommentar
Image Analyst
Image Analyst am 22 Jun. 2022
What problem? You forgot to tell us what the problem is.
Don't call your variable "format" since that's a built-in function and can't be used as a variable name. Call it "userFormat" or something else.
And you also forgot to tell us how you called the function. How many arguments did you pass in and what were they? If you pass in, say 8 arguments, how do you parse them into separate variables? Are you expecting variables in a certain order?
If you have any more questions, then attach your data and code to read it in with the paperclip icon after you read this:

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 22 Jun. 2022
The special keyword is varargin not varagin

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by