On Fri, Aug 29, 2003 at 11:50:00PM +0200, Tom Guder wrote:
Hallo!
Hi Tom,
Ich habe eine kleine Unklarheit in C entdeckt (wahrscheinlich seh' ich den Wald vor lauter Bäumen nicht)
Beispiel
void main(void) { float a = 0.41, b=1.22; rechne(a, b); return 0; }
void rechne(float z, float y) { printf("%f, %f", z, y); return 0; }
z und y stimmen nun aber nicht mit a und b überein!?
Wieso? Nur weil an der Ausgabe ein paar Nullen mehr drann sind? Das kanst du auch über die printf() Parameter ändern. Zudem sind float Zahlen auf einem Computer _nie_ wirklich identisch, also bei a = 0.4, c = 0.2 muss ein a == 2 * c nicht stimmen.
Ciao, Tobias