in C habe ich ein Phänomen, welches nach einer Erklärzung schreit. Wer hilft mir mal auf die Sprünge?
Floating-Point-Addition ist nicht assoziativ, d.h. (a + b) + c
ist im Allgemeinen nicht das gleiche wie a + (b + c)
. Deine beiden Rechenwege sehen zunächst danach aus, als würden die Operationen in der selben Reihenfolge stattfinden, es kann aber sein, dass der C-Compiler die Varianten verschieden optimiert. Kannst du das Verhalten auch beobachten, wenn du ohne Optimierungen kompilierst?