How to check the existance of a struct field at a given index?
3 次查看(过去 30 天)
显示 更早的评论
p(1).name = 'name1'; p(1).value = 1:10; p(2).name = 'name2';
I want to check existance of p(2).value, but exist and empty is not working for me. How to do?
3 个评论
Stephen23
2018-10-16
编辑:Stephen23
2018-10-16
"I want to check existance of p(2).value, but exist and empty is not working for me. How to do?"
Every element of a structure array has the same fields. So if you have defined this:
p(1).name = 'name1';
p(1).value = 1:10;
p(2).name = 'name2';
Then by definition of a non-scalar structure the field p(2).value also exists. If you have not allocated it a value, then it will be initialized to the empty array. This means it is not clear what your question relates to:
- p(2).value exists because it was created as soon as you created p(1).value. So testing for its existence is entirely superfluous.
- The value of that field is []. Is that what you want to test for?
Note that exist is totally irrelevant to this problem.
empty is not a suitable MATLAB function: did you mean isempty ?
采纳的回答
madhan ravi
2018-10-16
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!