幅広いUTF-8文字を期待するCアプリケーションを開発していたので、ICUライブラリを使用してUnicode文字をサポートし始めましたが、他のライブラリ(主にjansson、JSONライブラリ)ではうまく機能していないようです. .
janssonは UTF-8 を完全にサポートしていると主張していますが、パラメーターとして文字のみを想定しています (IIRC、Unicode 文字には 1 バイトでは不十分です)。一方、ICU はUChar
(少なくとも私のシステムでは 16 バイト サイズの文字)と呼ばれる特殊な型を使用します。 .
大きなデータを小さなデータにキャストするとデータが失われるため、Unicode 文字を通常の文字にキャストすることは、私には解決策のようには思えません。とにかくキャストしてみました。うまくいきませんでした。
私の質問は、どうすれば 2 つのライブラリをうまく連携させることができるでしょうか?