Ich hab mich nun erneut noch mal in die Problemematik von Unicode
und dem, was PB als ASCII bezeichnet auseinander gesetzt
War viel zu lange her, als ich mich da ein gearbeitet hatte.
Dafür schreib ichs dieses mal einfach alles nieder:
PB verwendet die Windows-1252 kodierung, welches dem
ISO-8859-1 Standard stark ähnelt. Diese unterscheiden sich nur in
dem Bereich 128 ($80) bis 159 ($9F) voneinander. Der ISO-
Standard verwendet hier Steuerzeichen, die der Windows-1252
für zusätzliche Zeichen verwendet. Der Unicode-Standard
verwendet für die ersten 256 Zeichen die aus ISO-8859-1.
Was heißt das nun?
Es geht hier nur um die Interne verarbeitung der Zeichen.
Wenn du in deinem Programm die Zahlencodes verwendest,
anstelle der tatsächlichen Zeichen, musst du diesen für
den obenen genannten Bereich anpassen. Eine For-Schleife
durch die ersten 256 Zeichen ist damit nicht mehr so einfach
realisierbar. Du müsstest erst alles von Unicode aus nach
"ASCII" umwandeln, damit diese Forschleife auch weiterhin
funktioniert. Prüfst du z.B. irgend wo auf ein bestimmtes Zeichen
wie Variable.c = 128, was ja dem Euro-Zeichen entspricht,
muss diese Zahl geändert werden in 8364.
Um zu erfahren, welche Zeichen das sind und welche Codierung sie eigentlich
haben, empfehle ich den entsprechenden englischen Wikipediaartikel:
http://en.wikipedia.org/wiki/Windows-1252
Hier sind die 32-Zeichen, wobei 5 garnicht belegt sind, sogar grün
umrahmt, so das sie in der Tabelle leicht zu finden sind.
Interessant dürfte, wie schon erwähnt, das €-Zeichen sein, das den Platz
128 ($80) bekommen hat.
Verwendest du die IDE mit UTF-8 und nutzt gerne die direkt im Programmcode
eingebundenen Text wie mit Hochkommata '€' oder eben normale Stringzeichen-
ketten, kann die IDE mit diese 32 - 5 Zeichen nicht mehr um gehen. Als Unicode-
Programm funktioniert zwar alles, als ASCII-Programm erhälts du hier aber nur
noch das Fragezeichen. Abhilfe schafft nur manueller Eingriff mit
"CompilerIf #PB_Compiler_Unicode ..."
Solltest du in deinem Programm aber tatsächlich nicht ein statisches Zeichen
verwenden, bzw. keines aus dem Bereich 128 - 159, so kannst du diese
Zeilen getrost in den Hinterkopf schieben, und dich Wichtigerem widmen.
MFG PMV