MultiByteToWideChar() および WideCharToMultiByte() 関数を使用して UTF-8 を UTF-16 に、またはその逆に変換するアプリケーションを開発しています。私の仕事の目的は、そのアプリケーションを Windows から Linux に移植することです。これらの関数はコード全体で広く使用されているため、その後のコード変更を最小限に抑えたいと考えています。残念ながら、私には制限があります - Wine のようなオープン ソース ライブラリを使用できないため、基本的には、マルチバイト UTF-8 文字列を UTF-16 ワイド文字列 (およびその逆) に変換し、32\ で動作する優れたアルゴリズムを探しています。 64 ビット Linux で、標準の Linux C ライブラリのみを使用します。
誰かが私が使用できる適切なアルゴリズムまたは標準実装を勧めてくれませんか?