[C++] - Unicode

Hallöchen!

Ich habe die Aufgabe bekommen einen Treiber zu Pogrammieren der komplett Unicode fähig ist. Dieser soll u.a. Daten auf verschiedensterweise entgegen nehmen, die extern geliefert werden.

Der Verwendete Compiler ist Borland C++ Builder, kann mir jemand helfen bzw. einen Tip geben wie ich so etwas angehen kann ?

Ich habe u.a. die STL in gebrauch. Ich hab keine Idee wie ich den Unicode krempel vergleichen soll etc. :-/

Danke im voraus

Michael

Hi Michael :smile:

Unicode ist ein alter Hut, so alt, dass er bereits im ANSI-C-Standard enthalten ist (wurde damals aber noch multi-byte oder wide character genannt). Der Datentyp für Unicode-Character heißt „wchar_t“. Um ein Zeichen oder eine Zeichenkette als Unicode zu deklarieren, schreibst du einfach ein großes L direkt (ohne Zwischenraum) vor das Hochkomma bzw. vor das Anführungszeichen, etwa so:

wchar_t *Iam= L"Michael Roth"

Alle (!!!) Standard-String-Funktionen aus ANSI-C sind auch in einer Unicode-Version verfügbar. Die Header-Datei zum Einbinden heißt „wchar.h“ und enthält z.B. Funktionen wie „wcslen()“ [= wide character string length].

cu Stefan.

wchar_t *Iam= L"Michael Roth"

Alle (!!!) Standard-String-Funktionen aus ANSI-C sind auch in
einer Unicode-Version verfügbar. Die Header-Datei zum
Einbinden heißt „wchar.h“ und enthält z.B. Funktionen wie
„wcslen()“ [= wide character string length].

Hi!

Danke für den Tipp! Hat mir sehr geholfen.
Ich hab mir mal die wchar.h angeschaut. Da ist einiges Definiert, aber hab da das anliegen: Hast Du ein Includefile wchar.h das nur den ANSI kennt ? Da ist ne menge Borlandspezifisches zeugs drinn.

Danke Michael

Hi Michael :smile:))

Wenn da in der Header-Datei sehr viele compiler-spezifische Formulierungen drinstehen, sollte dich das nicht weiter stören. Diese Include-Datei ist ANSI-Standard. Wie der Compiler diesen Standard herstellt, ist ja nicht wichtig. Es geht nur darum, dass die vom Standard geforderten Funktionen dort realisiert werden. Und das tun sie bestimmt. Borland ist bei der Umsetzung des C+±Standard stets vorbildlich. Die Funktionen fangen alle mit „wc…“ an. Aber wenn’s dich beruhigt, die wc-Funktionen sind sogar auch in deklariert :smile:))

cu Stefan.

Hi Michael :smile:))

Borland ist bei der Umsetzung des C+±Standard stets
vorbildlich. Die Funktionen fangen alle mit „wc…“ an. Aber

cu Stefan.

Mein Indernett geht wieder :smile: Danke für die Info! Nu kanns los gehen mit Unicodeprogrammen :smile:

Viele Grüße

Michael