Why does \r (carriage return) also create a new line when printing to the Command Window?
120 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
MathWorks Support Team
le 13 Juil 2011
Modifié(e) : MathWorks Support Team
le 3 Mar 2021
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.
Réponse acceptée
MathWorks Support Team
le 3 Mar 2021
Modifié(e) : MathWorks Support Team
le 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
0 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Environment and Settings dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!