你的代码有几个问题(没有任何特定的顺序):
- 无法到达错误消息,因为只有在大小匹配时才会计算该错误消息。使用其他代替。
- 错误消息在末尾缺少一个换行符。
- 你用的是clear all。
- 你用i和j作为变量。这不是一个大问题,但最好避免这种习惯。
- 你的循环不会为一个值范围运行。看看你是如何定义它们的。
- 你使用长度。你应该使用尺寸(_,dim)或numel。
- 您将代码作为图像发布,所以现在没有人可以为您编辑它。
- 你存储A的行和col大小,但不处理这些值。这一行还假设数组是2D或矢量,因此它在3D或更高版本中不能正常工作。
- 您使用了嵌套循环而不是简单地使用+进行加法操作。
- 您的错误不会阻止添加的运行,所以一旦您修复了代码,就会触发另一个错误。
- 你没有在任何地方初始化C,所以如果你删除清除所有而不是放清晰的或clearvars在c中会有剩余的值。目前这段代码不必要地慢,因为它必须动态地扩展数组。读到的()和0 ().
- 您在循环中忽略了分号,因此C将在每次添加后打印,在命令窗口中造成混乱,并降低代码速度。
一般建议:确保没有橙色的线。要么解决问题,要么(只有在您完全确定没有实际问题时)使用%#ok pragma:右键单击橙色线并选择suppress warning。只有显示C的最后一行是这个的候选行。所有的其他问题都要解决。