我有一个单元格数组。当我想要创建一个名称为的单元格数组时:' 0691008752'在这种情况下出现错误:"无效的字段名称"
cellUsers.('0691008752') = ....
我知道这个错误的原因是调用了一个数字。但我不知道如何为单元格设置此名称。
答案 0 :(得分:0)
我同意上述评论,在字母前添加字母是此问题的最佳解决方案..
使这种一致的一种方法是使用:
fname = matlab.lang.makeValidName('0691008752')
它并不广为人知,但你可以有以数字开头的字段 - 它的不良做法几乎肯定会导致错误......
那么怎么做,首先你需要使用 mex ,如果你看到mathworks mex example并修改相应的行:
memcpy(fieldnames[0],"Doublestuff",sizeof("Doublestuff"));
为:
memcpy(fieldnames[0],"01234",sizeof("01234"));
编译并运行后,您将获得:
注意:您只能通过动态字段名称访问它。要更新字段,您必须使用mex。