C

Asked • 06/13/19

Why does scanf() need "%lf" for doubles, when printf() is okay with just "%f"?

Why is it that `scanf()` needs the `l` in "`%lf`" when reading a `double`, when `printf()` can use "`%f`" regardless of whether its argument is a `double` or a `float`?Example code: double d; scanf("%lf", &d); printf("%f", d);

1 Expert Answer

By:

Still looking for help? Get the right answer, fast.

Ask a question for free

Get a free answer to a quick problem.
Most questions answered within 4 hours.

OR

Find an Online Tutor Now

Choose an expert and meet online. No packages or subscriptions, pay only for the time you need.