Matlab:结构中变量的名称

Han*_*esh 4 matlab struct

给定具有多个未知字段的函数的结构,如何获取每个字段的名称?

例如:

s = struct;
s.hello = 'world';
s.foo = 12;
s.bar = [ 1 2 3 ];
Run Code Online (Sandbox Code Playgroud)

我想要s(1),s(2)和s(3)的名称.在这种情况下,我会得到'你好','foo'和'bar'.

Jon*_*nas 6

您正在寻找FIELDNAMES

fieldnames(s)
fn = 
    'hello'
    'foo'
    'bar'
Run Code Online (Sandbox Code Playgroud)

注意,这fn是一个单元格数组,所以你得到了'foo'asfn{2}