//自定义的计算一个宽字符串长度的函数,库函数wcslen返回结果不正确,原因未知
int wcharLen(wchar_t *wchar)
{
int i=0;
while(wchar[i]!='\0')
{
i++;
}
return i;
}
//自定义的比较两个宽字符串是否相同的函数,库函数wcscmp返回结果不正确,原因未知
bool wcharCmp(wchar_t *wchar1, wchar_t *wchar2)
{
int minlength = wcslen(wchar1) < wcslen(wchar2) ? wcslen(wchar1) : wcslen(wchar2);
for(int i=0; i<minlength; i++)
{
if(wchar1[i] != wchar2[i])
return false;
}
return true;
}
<span style="white-space: pre;"> </span><pre name="code" class="cpp"><span style="white-space:pre"> </span>//自定义的连接两个宽字符串的函数,结果存储在返回值中
<span style="white-space:pre"> </span>wchar_t* wcharAdd(wchar_t* wchar1, wchar_t *wchar2)
{
int length1 = wcharLen(wchar1);
int length2 = wcharLen(wchar2);
wchar_t* result = new wchar_t[length1 + length2 +1];
for(int i=0; i<length1; i++)
{
result[i] = wchar1[i];
}
for(int i=0; i<length2; i++)
{
result[length1+i] = wchar2[i];
}
result[length1+length2]='\0';
//wchar1 = result;
return result;
}