0

我有编程问题。我想处理错误,因为它会很好用。例如,在以下示例中,我会将索引增加到正值,直到不再出现错误:

i=-10;
try
result=a[i];
    disp('success');
end
catch
i=i+1;
end

这只是表达我的问题的简单例子。如果有人可以帮助我,我将不胜感激。

4

2 回答 2

1

您在 - 行之前有一个多余end的关键字catch

它应该是

result = []
i = -10;
while isempty(result)
   try
      result = a(i);
      disp('success')
   catch
      i = i+1;
   end
end

我还在它周围放了一个循环,以使其i实际增加。顺便a[i]说一句,在 matlab 中不是一个有效的表达式,只有a(i)or a{i}(如果 a 是一个单元格数组)。

于 2013-08-12T08:17:27.730 回答
0

我不太确定你在问什么,但我在 Matlab 上查找了 try/catch 页面,它似乎很有帮助。Try/catch 可帮助您处理错误。例如,他们给出的关于组合的例子确实突出了它的用法。从我看到的情况来看,只要您声明了向量 a ,您就可以适当地使用 try/catch。

于 2013-08-12T02:25:36.030 回答