matlab如何把两个结构体合并成一个结构体,这两个结构体的fields形式是一样的。如图 5
3个回答
展开全部
方法/步骤
结构体的赋值:
结构体的赋值,这里不建议用下面这种形式进行统一赋值,
s = sturct('field1',values1,'field2',values2,…)
而是建议直接赋值,就是对每一个属性进行单独赋值,因为每一个属性的长度不同,所以,直接赋值,就省去了声明的过程,方便,快捷;
例如我们要声明下面的结构体:
example.name='百度经验';
example.adress='北京';
example.age='18岁'
直接输入以上语句便可。
结构体值的显示:
如果我们要查看结构体的所有值,那么可以直接输入结构体的名字,然后回车,就可以列出结构体的每项的名称和值,如果要显示某一个属性,通过单独调用,例如example.name,便会显示其名称。
结构体的属性增加删除:
如果我们要删除结构体的某一项属性,那么可以通过函数Rmfield,来实现,如果要增加一个属性,那么可以直接进行赋值便可。
结构体字段名称的获取以及判断:
假如我们想要知道这个结构体具体有多少字段(属性),我们可以通过函数fieldnames来获取字段名称,同时我们也可以通过函数isfield来判断是否存在某一字段。
具体的实例如下:
结构体的赋值:
结构体的赋值,这里不建议用下面这种形式进行统一赋值,
s = sturct('field1',values1,'field2',values2,…)
而是建议直接赋值,就是对每一个属性进行单独赋值,因为每一个属性的长度不同,所以,直接赋值,就省去了声明的过程,方便,快捷;
例如我们要声明下面的结构体:
example.name='百度经验';
example.adress='北京';
example.age='18岁'
直接输入以上语句便可。
结构体值的显示:
如果我们要查看结构体的所有值,那么可以直接输入结构体的名字,然后回车,就可以列出结构体的每项的名称和值,如果要显示某一个属性,通过单独调用,例如example.name,便会显示其名称。
结构体的属性增加删除:
如果我们要删除结构体的某一项属性,那么可以通过函数Rmfield,来实现,如果要增加一个属性,那么可以直接进行赋值便可。
结构体字段名称的获取以及判断:
假如我们想要知道这个结构体具体有多少字段(属性),我们可以通过函数fieldnames来获取字段名称,同时我们也可以通过函数isfield来判断是否存在某一字段。
具体的实例如下:
展开全部
呃......我琢磨着楼主的意思不就是“[logs;logs1]”?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我也遇到了同样的问题,经过不断测试,得到正确答案,用的是matlab2018a版本。
问题描述:logs 和 logs1 是两个fields完全相同的结构体,尺寸分别是n*1和m*1,我要把它们合并到一个logs里面,尺寸变为 (n+m)*1。
方法:logs(end+(1:length(logs1))) = logs1;
-------------------------------------------------------------------------------
强烈地批评那个又长又臭的最佳答案,网上copy一段就来骗人,在生活也是唯利是图见利忘义的小人,网络环境就是被你们这帮人搞坏的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询