显示矩阵大小的合理方法是什么?

时间:2017-04-19 13:11:24

标签: matlab octave

以下条件是可取的:

  • 代码应该在一行
  • 变量名称应在代码中重复尽可能少的次数(最好只有一次),但应存在于输出中
  • 输出应该至少包含领先的换行符(最好也是尾随行)

问题代码:

...
my_variable_name = [1 4];
disp(size(my_varialbe_name));
...

输出:

1 2

理想输出:

...
my_variable_name size: 1 2
...

尝试printf,spritf,disp但是他们失败了。

1 个答案:

答案 0 :(得分:1)

如果你想要真正的想象,你可以编写一个匿名函数来执行此操作,因为您可以使用inputname来推断输入变量的名称。

func = @(var)fprintf('\n%s size: %s\n', inputname(1), num2str(size(var)))

x = rand(10, 4);

func(x)
%   x size: 10   4

您也可以使用fprintf

fprintf('\n%s size: %s\n', 'myvar', num2str(size(myvar)))

或者,如果您不想使用num2str,则可以改为使用多行

fprintf('\n%s size: ', 'myvar')
fprintf('%d ', size(myvar))
fprintf('\n')