抑制输出

时间:2012-03-01 14:40:26

标签: matlab

我想在一组Matlab函数中抑制变量的输出。问题是作者忘了“;”在代码中的许多位置。出于调试目的,此输出很有用,但现在我想要抑制它,而不是搜索缺少“;”的整个代码。是否有可能关闭这种输出?

4 个答案:

答案 0 :(得分:29)

您可以使用evalc来抑制输出,但这需要您将表达式作为字符串传递。例如,如果您使用:

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

您可以使用

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

现在,任何转到控制台的输出都会被缓冲并存储在T中。

答案 1 :(得分:1)

最后用分号调用这些函数怎么样?所以不要打电话

my_function()

只需输入

即可
my_function();

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

答案 2 :(得分:1)

很抱歉,但是当你添加分号失败时,没有简单的方法可以关闭显示到命令窗口。只需自己添加分号。

是的,您可以重载显示和显示,阻止它们按预期工作,但是在正常情况下它们也将无法工作。你将破坏matlab中有价值的部分。

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

答案 3 :(得分:-2)

调用函数时,需要在末尾加上一个“;”符号,否则无论用户函数还是matlab预定义的函数都会显示输出。