W języku C dostępne są flagi formatów "%c"
i "%f"
dla funkcji podobnych do printf
- i scanf
. Obie te funkcje używają argumentów o zmiennej długości: ...
, które zawsze konwertują floats
na doubles
i chars
na ints
.Dlaczego `"% c "` istnieje w `printf`, jeśli` char` jest konwertowany na `int`?
Jeśli chodzi o konwersję, moje pytanie brzmi, dlaczego istnieją oddzielne flagi dla char
i float
? Dlaczego po prostu nie używać tych samych flag, co dla int
i double
?
pokrewne pytanie:
Why does scanf() need "%lf" for doubles, when printf() is okay with just "%f"?
Och ... oczywiście. A co z 'float'? –
@PaulManta: Flaga formatująca '% f' oczekuje na argument" double ". –