抑制输出

我想在一组Matlab函数中抑制variables的输出。 问题是作者忘记了“;” 在代码中的许多位置。 为了debugging的目的,这个输出是有用的,但现在我想压制它,而不search整个代码的缺less“;”。 有没有可能closures这种输出?

您可以使用evalc来抑制输出,但是这需要您以stringforms传递您的expression式。 例如,如果你正在使用:

[A,B,C] = notMyFunction(d,e,f); 

你可以使用

 [T,A,B,C] = evalc('notMyFunction(d,e,f);'); 

任何输出到控制台的输出都将被缓冲并存储在T

对不起,但没有简单的方法来closures显示到命令窗口,当你不能添加分号。 只需自己添加分号。

是的,你可以超载显示和显示,防止他们按照他们应该做的工作,但是他们在正常情况下也不能工作。 你会打破matlab的宝贵的一部分。

对不起,但在函数调用结束时添加分号不影响内部行是否没有分号。 那些内部未终结的行仍将转储结果到命令窗口。

那末尾用分号叫这些函数呢? 所以,而不是打电话

 my_function() 

只需键入

 my_function(); 

编辑: http : //www.mathworks.de/help/techdoc/ref/evalc.html evalc('my_function()'); 编辑2:太晚了

当调用该函数时,需要在最后加上“;”符号,否则不pipe是用户函数还是matlab预先定义的函数都会显示输出。