我有一个 api,它将 uni 代码数据作为 c 字符数组并将其作为 uni 代码中的正确短信发送。
现在我有四个代码点值对应于一些本地字母表中的四个字符,我想通过将它们插入到 ac char 数组中来正确发送它们。
我试过
char test_data[] = {"\x00\x6B\x00\x6A\x00\x63\x00\x69"};
其中 0x006B 是一个代码点,依此类推。
api内部正在调用
int len = mbstowcs(NULL,test_data,0);
上面的结果为 0。似乎 0x00 被视为终止空值。
我想将上述代码点正确分配给 c 数组,以便它们在接收电话上生成相应的 utf16 字符(它确实支持字符集)。如果需要,我也可以更改 API。
平台是带有 glib 的 Linux