是否可以在 MATLAB 中抑制"ans"?

  • 本文关键字:ans MATLAB 是否 matlab
  • 更新时间 :
  • 英文 :


我有一个函数,但我最后不想要ans = ...。可以压制它吗?

例如:

function c = Example (b)
c = b + 2;
end

在命令窗口中:

>>Example (8)
>>ans = 10

在调用函数的行尾放置一个分号。以下是涵盖此内容的文档。

从符号参考:

输出抑制

当放置在命令的末尾时,分号告诉 MATLAB 不要显示该命令的任何输出。在此示例中,MATLAB 不显示生成的 100 x 100 矩阵:

A = ones(100, 100);

这与显示有关。 AFAIK,没有办法阻止 MATLAB 仍然分配给ans(即 rand;仍然将结果分配给ans )。

根据@chappjc的回答,可以抑制ans的创建 - 但这可能不是那么可取。诀窍是仅在nargout不为零时才分配输出。例如:

function varargout = Example(b)
     c = b + 2;
     if nargout > 0
         varargout = {c};
     end
end

最新更新