Too many output arguments, simple but useful question
2 views (last 30 days)
Show older comments
Hi, I'm trying to get the following code (simplified) running but I don't get the clue how:
a = 3; b=2; c=1;
lol = [1 2 3];
[a b c] = lol;
I get the error "Too many ouptut arguments" and I understand, that this occurs as soon as I request too many outputs from a function/expression. How may I now tell the variable "lol" to split up in 3 arguments?
(In my special case, I'm using str2double(aCellArray) instead of the variable lol)
Thanks a lot and sorry for this rather dumb question xD
1 Comment
Fangjun Jiang
on 2 Sep 2011
What are you trying to do? Are you trying to assign multiple variables at a time?
Answers (3)
the cyclist
on 2 Sep 2011
Here is one kludgy way:
a = 3; b=2; c=1; lol = [1 2 3];
lolCell = num2cell(lol);
[a b c] = lolCell{:}
0 Comments
Grzegorz Knor
on 2 Sep 2011
I suggest to write own function, something like this:
function varargout = split(a)
for k = 1:nargout
varargout{k} = a(k);
end
See Also
Categories
Find more on Logical in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!