2011-01-21 46 views

回答

4

您可以先使用STRUCT2CELL将您的结构转换为单元阵列,然后使用它来生成多个输入的列表。

S = struct('x1','something','x2','something else'); 
C = struct2cell(S); 
myfun(C{:}); 

注意,在其中在S的字段定义的顺序是其中输入被传递的顺序。要检查这些字段的顺序是否正确,可以在S上运行fieldnames,它将返回一个单元格,其中的字段名称对应于C中的值。

0

东西添加到乔纳斯的回答:其实你可以省略结构,去正确的单元格,然后将其扩展成一个列表的函数的参数:

c = {125, 3}; 
nthroot(c{:})