ユニコードデータをc文字配列として受け取り、ユニコードで正しいSMSとして送信するAPIがあります。
現在、ネイティブ アルファベットの 4 文字に対応する 4 つのコード ポイント値があり、それらを ac char 配列に挿入して正しく送信したいと考えています。
私は試した
char test_data[] = {"\x00\x6B\x00\x6A\x00\x63\x00\x69"};
ここで、0x006B は 1 つのコード ポイントなどです。
内部でAPIが呼び出しています
int len = mbstowcs(NULL,test_data,0);
上記の結果は0になります。0x00 は終端のヌルとして扱われるようです。
上記のコードポイントをc配列に正しく割り当てて、受信側の電話で対応するutf16文字になるようにしたい(これはcharセットをサポートしています)。必要に応じて、API も変更できます。
プラットフォームは glib を使用した Linux です