fprintf and arrays of varying length
64 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Keith Holmlund
am 19 Jun. 2018
Kommentiert: Stephen23
am 19 Jun. 2018
I have a function where one of the inputs is an array, i.e A = [1 1 1 1] or A = [1 1 1 1 1 1 1]. I would like to use fprintf and/or sprintf to write the array to a text file. I know I can specify formatSpec to a specific length, like '%d %d %d %d' but if the array can vary in length, is there a way to make sure the formatSpec has the same number of %d as the amount of numbers in the array
1 Kommentar
Stephen23
am 19 Jun. 2018
"is there a way to make sure the formatSpec has the same number of %d as the amount of numbers in the array"
fprintf(' %d',A)
Akzeptierte Antwort
Ameer Hamza
am 19 Jun. 2018
Bearbeitet: Ameer Hamza
am 19 Jun. 2018
A = [1 1 1 1 1];
repmat('%d ', 1, length(A))
ans =
'%d %d %d %d %d '
sprintf(repmat('%d ', 1, length(A)), A)
ans =
'1 1 1 1 1 '
0 Kommentare
Weitere Antworten (1)
Star Strider
am 19 Jun. 2018
The fprintf (and sprintf) functions will do that by default:
A = [1 1 1 1 1];
fprintf('%2d', A)
fprintf('\n')
1 1 1 1 1
0 Kommentare
Siehe auch
Kategorien
Mehr zu Characters and Strings finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!