how to display newline

1 151 vues (au cours des 30 derniers jours)
Tor Fredrik Hove
Tor Fredrik Hove le 16 Oct 2011
Commenté : Walter Roberson le 17 Nov 2024 à 17:22
Can you use newline seperately or do you always have to use it in fprintf in order to make it work. Theese are my attempts with newline:
this did not work:
This gave a strange result
Is this the only way to make a newline?:
Here is my script for the last line:
rows=3;
columns=5;
for i=1:rows
for j=1:columns
fprintf('*')
end
fprintf('\n')
end
  1 commentaire
the cyclist
the cyclist le 16 Oct 2011
I think you got the answer you need from Wayne, but for future reference, you posted three copies of the same image in this question.

Connectez-vous pour commenter.

Réponse acceptée

Wayne King
Wayne King le 16 Oct 2011
Hi, '\n' by itself outside of special calls is just interpreted as the string (character array) \n
It's not just in fprintf(), sprintf() also interprets escape characters correctly like \n or \t
but yes you're right:
disp('Hi \n nice to meet you')
% produces Hi \n nice to meet you
but
fprintf('Hi \n nice to meet you')
% Hi
% nice to meet you>>
  4 commentaires
Walter Roberson
Walter Roberson le 19 Sep 2020
disp(sprintf('Hi \n nice to meet you'))
Sina Davari
Sina Davari le 11 Déc 2020
Hi;
You could simply put { disp(' '); } between two disp for obtaining an empty line.
disp('Hi'); disp(' '); disp('nice to meet you')

Connectez-vous pour commenter.

Plus de réponses (3)

Steven Lord
Steven Lord le 6 Sep 2022
If you're using release R2016b or later you can use the newline function, perhaps in conjunction with a string array.
s = "apple" + newline + "banana"
s =
"apple banana"
c = ['apple', newline, 'banana']
c =
'apple banana'
  2 commentaires
Vishal
Vishal le 14 Nov 2024 à 10:05
If you want to use newline in verisons below 2016b you can use following comment.
string2Print=sprintf('%s\n','Hi','nice to meet you')
Walter Roberson
Walter Roberson le 14 Nov 2024 à 19:30
That is what @Saul Stokar suggested two years ago.

Connectez-vous pour commenter.


Kleber Zuza Nobrega
Kleber Zuza Nobrega le 19 Sep 2020
supose you want to disp the word 'Ball'. Try
a=['Ball',char(13),'to a new line']
disp(a)
  4 commentaires
Walter Roberson
Walter Roberson le 15 Nov 2020
Or
disp("Ball" + newline + "to a new line");
Daniel Gonzalez
Daniel Gonzalez le 25 Août 2021
char(10) worked for me, but great advice.

Connectez-vous pour commenter.


Saul Stokar
Saul Stokar le 6 Sep 2022
Youj can do it using sprintf :
string2Print=sprintf('%s\n','Hi','nice to meet you');
disp(string2Print)
This prints:
Hi
nice to meet you
  2 commentaires
Saul Stokar
Saul Stokar le 17 Nov 2024 à 9:10
Note that you can avoid the extra newline after the last printout as well:
disp(sprintf('%s\n%s\n%s','first line','second line','third line')) prints
first line
second line
third line
(without a newline after the last line printed)
while disp(sprintf('%s\n','first line','second line','third line')) prints
first line
second line
third line
(with a newline after the last line printed)
Walter Roberson
Walter Roberson le 17 Nov 2024 à 17:22
... unless you are using LiveScript or MATLAB Online or MATLAB Answers. All three of those automatically add the "missing" newline after the last output display on each logical line of code (logical line is physical line except taking into account ... line continuation).

Connectez-vous pour commenter.

Catégories

En savoir plus sur Characters and Strings dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by