Bibliotheken für die Arbeit mit Unicode in C?

Ich verwende derzeit char *for Strings in meinem C-Programm. Ich würde gerne lernen, wie man Unicode-Unterstützung implementiert und habe mir utf8proc.

Ist utf8procdie beste universelle Unicode-Bibliothek für C? Gibt es neben der Dokumentation in der Header-Datei Beispiele für die Verwendung?

Zum Beispiel kann ich herausfinden, wie ich utf8procin meine Codebasis kompilieren kann, aber ansonsten bin ich ratlos – verwende ich weiter char *oder verwende ich einen anderen Typ? Solche Sachen sind nicht gut beschrieben.

Wenn es bessere Bibliotheken oder besser dokumentierte Bibliotheken gibt, worauf sollte ich achten?

Welche Funktionalität suchen Sie? UTF-8 in Zeichen aufteilen? in Glyphen? Konvertieren zwischen Darstellungen? Zeichenklassen (z. B. herausfinden, was Leerzeichen sind)? …
Wenn Sie Unicode vollständig verarbeiten möchten , müssen Sie nach einer UTF-16-Bibliothek suchen, nicht nach UTF-8.
Ich möchte Benutzern ermöglichen, eine Datenmatrix mit beschrifteten Zeilen und Spalten (die möglicherweise Unicode-Zeichen enthalten) in mein Programm zu streamen, und mein Programm verarbeitet diese Datenmatrix in einem internen Datenspeicher. Mein Programm verarbeitet dann diesen Datenspeicher und rendert ihn in eine SVG-Datei, die Zeichenfolgen im Unicode-Format enthalten kann, die an bestimmten Stellen platziert sind. Ich möchte also wissen, wie ich das Lesen und Schreiben dieser Art von Zeichenfolgen unterstützen kann. Ich kann mit ASCII umgehen, weil (unsigned) char *das für mich erledigt ist. Ich möchte jedoch nicht-ASCII-sprechende Benutzer unterstützen können. Hilft das zur Klärung?

Antworten (1)

Keine Bibliothek als solche, aber ich habe einige UTF-8-Funktionen für meine eigenen C-Projekte geschrieben, die Sie hier in den Dateien unicode.hund finden. unicode.cSie verwenden die MIT-Lizenz , sodass Sie im Grunde mit ihnen machen können, was Sie wollen.