在matlab中使用结构

时间:2016-12-21 11:14:44

标签: matlab structure

我想在matlab中使用结构,但在第一次迭代中它运行正确,在其他迭代中给出该消息。

  

包含字段的1x2结构数组:

我的代码是:

    for i=1:lenfd
    currow=rees(i,:)
    maxcn=max(currow)
       if maxcn~=0
         maxin=find(currow==maxcn)
         ress(i).x =maxin
       end
    end
谢谢。

1 个答案:

答案 0 :(得分:3)

该消息不是警告或错误。这只是MATLAB打印操作的输出。默认情况下,它会执行此操作,除非您通过在命令中附加分号来禁止它:

for ii = 1:lenfd

    currow = rees(ii,:);   % <=== NOTE: semicolons at the end
    maxcn  = max(currow); 

    if maxcn ~= 0
        ress(ii).x = find(currow==maxcn);
    end

end

注意max()可能有2个输出,第二个输出是进入最大值的数组的第一个索引。如果您事先知道任何最大值只会出现一次,则可以跳过find()的调用并使用max()的第二个输出。