matlab结构体数组定义方法

matlab结构体数组定义⽅法
matlab学习-结构体数组定义
当需要定义的参数变量较多时,往往需要⽤到结构体,Matlab中结构体数组与python中字典概念差不多,使⽤⽅法也类似,下⾯详细介绍其定义⽅法。
⽅法⼀:直接定义
直接定义,如定义
洛阳盛归来
// An highlighted block
students.name = 'John';
students.sex = 'Boy';
students
输出结果为 包含以下字段的 struct:
name: 'John'
sex: 'Boy'
name对应字典中的key,'John’对应于字典中的value,如若增加结构体维数,可直接定义来增加结构体中变量
龙舌兰科students(2).name = 'Amy';
students(2).sex = 'Girl';
统筹区域发展
students
此时输出结果为包含以下字段的 1×2 struct 数组:
name
美国种族简史
sex
若想增加结构体中内容,可直接定义
students(1).province='Beijing';
此时结构体为包含以下字段的 1×2 struct 数组:
name
sex
province
打开结构体变量可看到其具体的值为
‘John’ ‘Boy’ ‘Beijing’
‘Amy’ ‘Girl’ []
对未定义的字段⽤[]表⽰,当然结构体中可包含字符串,向量,矩阵,元组,结构体等。
结构体也可像矩阵⼀样可⾃定义维数,如定义⼀个结构体
students(2,1).name = 'LiMing';
结构体变为2×2 struct 数组.
⽅法⼆:使⽤struct命令
使⽤struct来定义,struct的定义为⼀个key,⼀个value,如struct(‘key1’,val1,‘key2’,val2,…),实例如下:
students = struct('name','John','sex','Boy','province','Beijing');
结果与⽅法⼀中⼀致包含以下字段的 struct:
name: 'John'
sex: 'Boy'
province: 'Beijing'
当需要定义多维结构体时,value⽤元组来表⽰即可,如
students = struct('name',{'John','Amy'},'sex',{'Boy','Girl'},'province',{[],'Beijing'});
注意当有未定义的val时,需⽤[]表⽰,否则会输出同⼀变量,此时输出为包含以下字段的 1×2 struct 数组:
name
官林论坛
sex
province
如需改变结构体的维数,只需改变元组的维数即可,如
students = struct('name',{'John';'Amy'},'sex',{'Boy';'Girl'},'province',{[];'Beijing'});
输出则为包含以下字段的 2×1 struct 数组:
name
sex
无机化学学报
province

本文发布于:2024-09-24 00:20:50,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/361251.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:结构   定义   包含   字段   变量   输出
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议