On Sun, Jul 15, 2001 at 11:55:35PM +0200, Eric Schaefer wrote:
On Sun, Jul 15, 2001 at 05:23:15PM +0200, Reinhard Foerster wrote:
On Sun, Jul 15, 2001 at 02:40:26PM +0200, Heiko Schlittermann wrote:
printf("%f\n", ++d * ++d); printf("%f\n", ++i * ++i);
Lies mal die C-FAQ (http://www.faqs.org/faqs/C-faq/faq/) Abschnitt 3 insbesondere 3.2.
Gott ist mir schlecht.
Wieso? Der Kram ist undefiniert. Da man üblicherweise deterministische Programme schreiben will, macht man sowas nicht. Wo liegt das Problem?
Interessant an der Sache ist höchstens, daß nicht nur die Ausgabe unklar ist, sondern auch die Werte von d und i am Ende. Es spricht nichts dagegen, dass beide am Ende 0 sind wenn ich die FAQ richtig überflogen habe. (siehe 3.9)
BTW: Die Version des C99-Standards, die ich hier habe, ist 566 Seiten lang und eignet sich eher zum Nachschlagen als zum Durcharbeiten :)
Reinhard