MATLAB 板


LINE

已爬文,不过没有找到类似的问题 (或是我眼瞎了请告诉我) 版本: R2010b 问题: 我自己写好的.mat里头有一个结构变数 A 大概长这样=> A(1).name = 'apple'; A(2).name = 'banana'; ... 我想在读进.mat之後,用for 回圈把A补加上其他的东西,比方 All_fruit_price = [100 45 30 67 ...]; for i = (1:n) A(i).price = All_fruit_price(1,i); end 但是在程式码上这样写,code会在A底下出现这样的警示讯息: the variable 'A' appears to change size on every loop iteration 虽然就这样放着不管他也还是能跑 但是code看起来就有一堆黄色蚯蚓实在让人觉得不是很好 想请问版上各位大大有没有遇过类似问题及解决的方法,谢谢!! --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.116.82.182
1F:推 kurt28:维度会随着回圈增加 可以先把A开好 09/02 09:29
2F:推 kurt28:更正一下 应该是A.price的大小会随着回圈增加比较精确@@ 09/02 09:58
请问您的意思是像这样吗? for k = (1:size(A,1)) A(k).price = []; end 我自己这样写的时候一样会在A的地方出现同样的讯息 还是我搞错意思了? ※ 编辑: Africakid 来自: 140.116.82.182 (09/02 10:45)
3F:推 DKer:warning的意思是随着你回圈进行,A这个变数的大小会越来越大 09/02 13:06
4F:→ DKer:解决这个warning的方法就是在回圈开始之前把变数大小宣告好 09/02 13:06
5F:→ DKer:回圈里只要填格子,不用再把变数加大 09/02 13:06
6F:→ DKer:structrue我不常用,无法告诉你怎麽宣告 sorry 09/02 13:07
7F:推 kurt28:可以开始时就开.price A=struct(... , ... ,'price',[]) 09/02 13:53
8F:推 kurt28:不过我用2013 只要开始的时候有宣告A 後面用原PO的回圈 09/02 14:15
9F:→ kurt28:好像就不会出现那个warning 09/02 14:15
大概了解两位大大的意思: --- 1. A = struct('name',[],'input',struct('a',[],'b',[])); 2. 3. for i = (1:10) 4. A(i).name = 'GOOD'; 5. A(i).input.a = i; 6. A(i).input.b = strcat(num2str(i),'+',num2str(5*i)); 7. end 8. 9. save('All.mat','A'); --- 如果我把第一行挡住的话,就会出现我原本说的黄色蚯蚓的问题 如果不挡住就OK。 假设上面是一个test.m档好了 如果我现在创一个test2.m档如下: --- 1. load('All.mat'); 2. 3. for i = (1:size(A,2)) 4. A(i).c = A(i).input.a+ 5*A(i).input.a; 5. end --- 那麽在第四行就会有黄色蚯蚓了。 虽然我尝试在test.m档里把A的结构多加一个c 但是好像没有办法影响到test2.m的警告出现,想请问一下这事儿有解吗? 再麻烦各位大大解惑了,谢谢! > < ※ 编辑: Africakid 来自: 140.116.82.182 (09/02 17:09)
10F:推 kurt28:一样 如同D大所说 你的变数会随着回圈增加 要解决的话就是 09/02 18:42
11F:→ kurt28:在回圈执行前先宣告这个变数的size 09/02 18:43
12F:→ kurt28:糟糕 又漏字 变数的size会随着回圈增加才对XD 09/02 18:44
13F:→ kurt28:宣告的可以用ones zeros ..等等去开启变数 09/02 18:45
14F:→ Africakid:不过我貌似没有找到对structure的宣告呢XD 好像都是 09/03 21:40
15F:→ Africakid:需要的时候直接写进去这样。比如A(3).c = ...之类 09/03 21:40
16F:推 kurt28:看原PO你的需求 大多状况的确是你说的那样XD 09/03 21:55
17F:→ kurt28:不过也是可以事先宣告就是了 (为了消除那黄色警告XD) 09/03 21:55







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:BuyTogether站内搜寻

TOP