Hi!
Aber für UTF-16 und -32 ist eine BOM doch sehr sinnvoll, denn da ist unterschiedliche Byte-Order auch in den Dokumenten vorhanden.
Das meinte ich doch - warum ist das so? Dafür gibt es keinen echten Grund - warum soll ich mich darum kümmern müssen?
Der Grund ist, dass Systeme mit unterschiedlichen Byte-Reihenfolgen arbeiten, das Unicode-Konsortium jedoch nicht festgelegt hat, wie die Reihenfolge in Dokumenten zu sein hat, sondern da freie Wahl gelassen hat.
Der Schwachsinn liegt ja genau darin.
Jedes System darf also die Byte Order nehmen, die es mag. Und damit Systeme mit anderer Byte-Order-Vorliebe die Texte richtig herum interpretieren können, muss man die BOM an den Anfang stellen. Natürlich hätte man sich die BOM ersparen können, wenn man eine bestimmte Byte-Reihenfolge festgelegt hätte ...
Das ist ein ISO-Standard: ersetze Byte durch Oktett und Du bist durch!
Die Thematik hatte ich erst neulich: "was ist 4 << 3"?
(ZCE-Prüfungs-Frage im Vorbereitungs-Kurs)
Zends Musterlösung ist falsch! Die sagen 0!
Mindeestens 90% der von mir befragten Informatiker halten allerdings deren Lösung für richtig - sie denken zu krude.
Ja, es geht dabei um Bits, aber das Problem ist gelöst, wenn man konsequent zuende denkt - als Entwickler interessiert mich keine Repräsentation der Daten im physikalischen Speicher - als Mensch schon.
Die literale Darstellung von Zahlen sollte eindeutig bleiben.
off:PP
"You know that place between sleep and awake, the place where you can still remember dreaming?" (Tinkerbell)