简单地使用\r
不起作用,因为它被作为新行处理:
>> fprintf('a\rb');
a
b>>
那么打印回车的正确方法是什么,这样我就可以更新信息而不会在屏幕上收集整个垃圾。
简单地使用\r
不起作用,因为它被作为新行处理:
>> fprintf('a\rb');
a
b>>
那么打印回车的正确方法是什么,这样我就可以更新信息而不会在屏幕上收集整个垃圾。
这是一个解决方案,显然不如 a 干净\r
:
nchar = fprintf('abcd');
fprintf(repmat('\b', 1, nchar));
fprintf('ABCD');
例如在一个循环中:
for k=1:10,
nchar = fprintf('Processing %d of %d', k, 10);
pause(0.10);
fprintf(repmat('\b', 1, nchar));
end
\n 或 char(10) 应该可以解决问题!
如果您尝试为 guis 执行此操作,我建议您执行以下操作:
['FIRST LINE' char(10) 'SECOND LINE'] 等等。
或者我认为 sprintf 将能够为您执行“\n”,但我对此并不积极。
如果在 GUIDE 中,在属性检查器的字符串部分,您实际上可以双击一个编辑框来执行新的行,起初它有点令人困惑。