说我有一个名为“x
”和x=5
的变量。
我想这样做:
disp('x is equal to ' + x +'.');
并打印代码:
x等于5.
这就是我习惯用Java做事的方式,因此它们必须在MATLAB中以类似的方式完成。
由于
答案 0 :(得分:68)
如果要使用disp
,可以构造要显示的字符串,如下所示:
disp(['x is equal to ',num2str(x),'.'])
我个人更喜欢使用fprintf
,它会使用以下语法(并让我控制x值的格式化)
fprintf('x is equal to %6.2f.\n',x);
当然,您也可以将x
作为字符串提供,并获得与disp
相同的输出(给出或采取一些换行符)。
fprintf('x is equal to %s\n',num2str(x))
答案 1 :(得分:1)
在matlab中打印出一些标量变量是一团糟(见上面的答案)。在搜索路径中使用这样的函数有助于:
function echo(varargin)
str = '';
for k=1:length(varargin)
str = [str ' ' num2str(varargin{k})];
end
disp(str)
答案 2 :(得分:0)
只需在disp()内嵌套一个sprintf()。
disp(sprintf("X is equal to %d.",x));