Отображение информации из MATLAB без перевода строки
-
06-07-2019 - |
Вопрос
Есть ли способ вывода / отображения информации из программы MATLAB без перевода строки в конце?
Моя программа MATLAB время от времени выводит число. Между выводом числа программа делает много других вещей. Эта конструкция в основном указывает на какой-то прогресс, и было бы неплохо не каждый раз переводить строку, просто чтобы сделать ее более читаемой для пользователя. Это примерно то, что я ищу:
Current random seed:
4 7 1 1
Следующий вывод из программы будет в той же строке, если он все еще делает то же самое, что и раньше.
Я прочитал документацию по disp, sprintf и format, но не нашел того, что искал. Это не значит, что его там нет. ;) Р>
Решение
Функция fprintf не добавляет перевод строки, если вы явно не указали это. Опустите аргумент fid, чтобы распечатать его в командном окне.
fprintf('Doing stuff... ');
for i = 1:5
fprintf('%d ', i);
% do some work on that pass...
end
fprintf(' done.\n'); % That \n explicitly adds the linefeed
Использование sprintf не совсем работает: он создает строку без перевода строки, но затем, если вы используете disp () или пропускаете точку с запятой, собственная логика отображения disp добавит перевод строки.