Thread PERL vs. C: gleicher Code, anderes Ergebnis (47 answers)
Opened by docsnyder at 2005-09-14 16:16

docsnyder
 2005-09-14 17:47
#57967 #57967
User since
2005-09-08
300 Artikel
BenutzerIn
[Homepage] [default_avatar]
Na ja, daß '$n = $n++' Null liefert, kann man so oder so sehen: Da der Inkrement nach der Zuweisung ausgeführt wird, spricht dafür, daß die Null zugewiesen wird. Wenn aber der Inkrement ausgeführt wird, würde man doch erwarten, daß er sich auf die gleiche Speicheradresse bezieht (wie es ja auch in C der Fall ist). Ansonsten hätte man 2 unabhängige Instanzen einer logischen Variablen. Weiter muß man sich dann fragen, was denn bitteschön in aller Welt durch den Inkrement schließlich hochgezählt wird, wenn nicht $n.

Vor vielen vielen Jahren habe ich sogar sowas

Code: (dl )
++n++ = ++n++;


durch den C-Compiler gekriegt. Und, wer hätte das gedacht: das Ergebnis war Compiler-abhängig. Eben wohl deshalb, weil eben schwer zu sagen ist, wie solche Konstrukte auszuwerten sind.

Interessant find ich's trotzdem.

Gruß, Doc

View full thread PERL vs. C: gleicher Code, anderes Ergebnis