Difference between %d and %f?
Show older comments
Hi, I dont quite understand the difference between %d and %f and its usage in certain cases.
Does %d correspond to int in C and %f correspond to float?
What is the case I have to use %d instead of %f?
Accepted Answer
More Answers (1)
If you want to print integer values, you probably want to use %d.
If you want to print non-integer values, you probably want to use %f.
While you can use %f to print integer values (as per the second line of code below) if you try to use %d to print non-integer values it will actually switch to a different specifier (%e I believe, as per the note in the Notable Behavior of Conversions with Formatting Operators section of the description of the formatSpec input argument on the fprintf documentation page.)
fprintf("This uses the %%d format specifier: %d\n", 42)
fprintf("This uses the %%f format specifier: %f\n", 42)
fprintf("This uses the %%d format specifier: %d\n", pi)
fprintf("This uses the %%f format specifier: %f\n", pi)
Categories
Find more on Entering Commands in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!