Sscanf /sprintf usage
8 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Hello,
So, apparently I don't understand very basic I/O....can somebody help me?
if num=343.1; str=sprintf('%10.3f',num); numdata=sscanf(str,'%10.3f'); why does numdata ~= num ???
Now, I can make it work by simply saying: numdata=sscanf(str,'%f'); then numdata=num;
But, I would like to use the former formatted sscanf to check the formatting of an input file...
0 Commenti
Risposta accettata
Sarah Wait Zaranek
il 11 Mag 2012
I think this is your issue --
From doc for sscan - "Format specifiers for the reading functions sscanf and fscanf differ from the formats for the writing functions sprintf and fprintf. The reading functions do not support a precision field. The width field specifies a minimum for writing but a maximum for reading"
This code would work:
num=343.1;
str=sprintf('%10.3f',num);
numdata=sscanf(str,'%f');
0 Commenti
Più risposte (1)
Vedere anche
Categorie
Scopri di più su Logical in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!