Matlab 将函数的所有输出获取到单元格数组中

Matlab 将函数的所有输出获取到单元格数组中,matlab,Matlab,某些函数具有任意数量的输入和输出。例如,让我们看看ndgrid:您可以提供N个输入,然后获得N个输出 v={1:10,2:20,3:30...} [d0,d1,...]=ndgrid(v{:}); 是否存在将所有输出都放入单元数组的方法,例如 [d{:}]=ndgrid(v{:}); 为供将来参考,是: v={1:10,2:20,3:30...} d=cell(length(v),1); [d{:}]=ndgrid(v{:}); 可能与几乎相同。在这种情况下,输出参数的数量未知如果输出的数

某些函数具有任意数量的输入和输出。例如,让我们看看
ndgrid
:您可以提供N个输入,然后获得N个输出

v={1:10,2:20,3:30...}
[d0,d1,...]=ndgrid(v{:});
是否存在将所有输出都放入单元数组的方法,例如

[d{:}]=ndgrid(v{:});

为供将来参考,是:

v={1:10,2:20,3:30...}
d=cell(length(v),1);
[d{:}]=ndgrid(v{:});

可能与几乎相同。在这种情况下,输出参数的数量未知如果输出的数量未知,这是不可能的。您的答案假设有给定数量的输出。您的答案与链接问题中的答案基本相同。将此处的
6
替换为
length(v)
。这假设输入数量与输出数量相同。。。可能需要将
d
初始化为独立于
v