int into float
-
wie kann ich einen integer zu einem float machen?
-
float f=i;
-
habe ich auch gemeint das man mit einfacher zuweisung ein int zu einen float inventieren kann aber ich habe versucht das zwei integer einer methode als parameter zu übergeben welche eigentlich float bracht....
-
foo((float)ia, (float)ib);so vielleicht? deine erklärung verstehe ich nicht genau.
geloescht
-
nooby schrieb:
habe ich auch gemeint das man mit einfacher zuweisung ein int zu einen float inventieren kann aber ich habe versucht das zwei integer einer methode als parameter zu übergeben welche eigentlich float bracht....
Wenns float erwartet kannst du trotzdem ein int übergeben, das wird implizit in ein float konventiert genau so wie es CStoll gezeigt hat...
@geloescht:
Da wir in einem C++ Forum sind, sollte es lieber so aussehen:foo(static_cast<float>(ia), static_cast<int>(ib) );
-
da wir im C++ forum sind, wissen wir, dass es (für integer) keinen unterschied zwischen
(float)x;static_cast<float>(x);und
float(x);gibt und bevorzugen das, was in der entsprechenden situation angemessen ist.
-
danke
-
static_cast ist mir zu viel schreibarbeit und außerdem tut es genau das, was (type) auch tut. Ich finde nicht, dass C-Casts wirklich ein Stilbruch sind. Ich benutze type() wenn ich ausdrücklich ein temporäres Objekt erzeugen will und (type) wenn ich caste.
geloescht