字串轉USHORT陣列的函式

2021-04-13 05:24:01 字數 526 閱讀 7072

今天遇到了乙個問題,涉及到如何將乙個char *型別的字串轉換成乙個ushort陣列的問題。開發環境是vc++6。描述如下:

char *一般儲存的是ansi標準字串,即西文字元占用1byte,漢語等東亞文字占用2byte,長度是動態的。而有些情況下涉及到需將ansi string轉成unicode string。目前了解到似乎沒有現成的函式可以用(也許確實有,如果有知道的同仁還請不吝賜教)。經過分析,unicode的漢字在記憶體中儲存的byte值肯定不在0-255之間,因此凡是連續兩個這樣的byte的情況肯定是乙個漢字。按照這個思路(同時也要感謝這個帖子給我乙個解決問題的思路)得出以下乙個函式:

void ansistrtoushortarray(const char *stransi, int strlen, ushort *wstr, int &reallen)

else

}else

}reallen = wcnt;

}這樣就能夠動態的將乙個普通字串轉換為符合要求並返回了實際長度的usigned short int陣列了。   

PHP 陣列轉字串,與字串轉陣列

implode 使用乙個字串將陣列變成字串 array array lastname email phone comma separated implode array 使用 連線 echo comma separated lastname,email,phone empty string when...

PHP 陣列轉字串,與字串轉陣列

php 陣列轉字串,與字串轉陣列 implode 使用乙個字串將陣列變成字串 array array lastname email phone comma separated implode array echo comma separated lastname,email,phone empty ...

PHP 陣列轉字串,與字串轉陣列

1 implode 使用乙個字串將陣列變成字串12 3456 78910 11 array array lastname email phone comma separated implode array echo comma separated lastname,email,phone empty...