Why does \r (carriage return) also create a new line when printing to the Command Window?

124 visualizzazioni (ultimi 30 giorni)
There does not seem to be a difference in the use of \n or \r. I would like to see the \r only return a carriage return and not a new line as it does in C.

Risposta accettata

MathWorks Support Team
MathWorks Support Team il 3 Mar 2021
Modificato: MathWorks Support Team il 3 Mar 2021
This is a problem when using FPRINTF to print to the screen. FPRINTF will work as expected when writing to a file.
In MATLAB 6.1 (R12.1) it is possible to get the effect you are looking for by using '\b' instead of '\r', where '\b' is the escape character for a single character backspace.
You will need to change the code a little to adjust to the '\b'. Following is an illustrative example:
ix = 1;
chars='|/-\';
fprintf(1,'%c', chars(ix)); % new line
while(1)
fprintf(1,'\b%c', chars(ix)); % modified line
ix = mod(ix,4)+1;
pause(0.05);
end
If multiple spaces need to be deleted, you may use the following code fragment:
for ix=1:numspaces
fprintf('\b')
end

Più risposte (0)

Categorie

Scopri di più su Startup and Shutdown in Help Center e File Exchange

Prodotti

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by