最近在使用VC++开发,发现VC++原生的wchar_t字符串转换api达不到我想要的要求,因为这些api在调用时,不会限制来源空字符数组为const,在调用的时候可能会引起不必要的麻烦,因此我自己开发了一个转换wchar_t字符串数组为小写的API。
调用方法:
WcharStringToLower(targetString, srcString, sizeof(targetString) / sizeof(*targetString))
该WcharStringToLower API
API完整源码附上:
//参数1:指向要复制到的宽字符数组的指针
//参数2:指向复制来源的宽字符串的指针
//参数3:要复制的最大宽字符数(不需要减一获取空字符截断)
void WcharStringToLower(wchar_t * targetString, const wchar_t * srcString,const int targetLength)
{
const wchar_t NullChar = L'\0';
int index = 0;
for (; srcString[index] != NullChar; ++index)
{
if ((targetLength - 1) == index)
break;
targetString[index] = towlower(srcString[index]);
}
targetString[index + 1] = L'\0';
}