【发布时间】:2014-07-08 09:59:52
【问题描述】:
请看这段 MATLAB 代码:
formatspec = '%5i';
delay = num2str(d,formatspec);
datasave = [datasave; repeating_character blanks(5) num2str(lenmax) blanks(5) delay];
end
我想以表格的形式显示结果datasave。变量d 的值将在for 循环中从2 递增到127。 lenmax 变量没有问题,因为它始终是一个数字。但问题在于变量delay。在第一个实例中,delay = 2 的值,因为循环以2 开始,一个特定的维度将被分配给datasave。然后d 的值在循环中不断增加。在第 9th 实例期间,它将变为 10,这是一个 2 数字整数。问题就在这里。当它变成 2 位整数 (10) 时,尺寸将不匹配,并且使用 vertcat 会出现错误,因为尺寸不一样。
我认为使用%5d 应该可以解决问题,但事实并非如此。如果我将循环更改为从10 开始到127,则在delay = 100 时会出现问题。将显示从10 到99 的值,但在显示100 时,会弹出关于尺寸不匹配的相同错误。
谁能告诉我如何解决这个问题?
【问题讨论】:
标签: string matlab padding number-formatting