Why there is no space after the equal sign? (fprintf)

6 vues (au cours des 30 derniers jours)
Akbar
Akbar le 7 Juin 2018
Modifié(e) : Akbar le 7 Juin 2018
fprintf('%s \n',strcat('s',' = ','1000',';'));
Output:
s =1000;
Desired:
s = 1000;

Réponse acceptée

Stephen23
Stephen23 le 7 Juin 2018
Modifié(e) : Stephen23 le 7 Juin 2018
"Why there is no space after the equal sign?"
It has nothing to do with fprintf. As the strcat clearly states, strcat removes whitespace characters from the end of char vectors: "For character array inputs, strcat removes trailing ASCII white-space characters". If you want to keep the space characters, put it into a scalar cell array, like this:
{' = '}
But really you would be much better off just writing a proper format string for fprintf, rather than using both strcat and fprintf.

Plus de réponses (1)

Kodavati Mahendra
Kodavati Mahendra le 7 Juin 2018
Modifié(e) : Kodavati Mahendra le 7 Juin 2018
fprintf('%s \n',strcat("s"," = ","1000",";"));
output
s = 1000;
  1 commentaire
Akbar
Akbar le 7 Juin 2018
Modifié(e) : Akbar le 7 Juin 2018
Thank you, Kodavati!

Connectez-vous pour commenter.

Catégories

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

Tags

Produits


Version

R2017b

Community Treasure Hunt

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

Start Hunting!

Translated by