CString strSour=L"中国abc";
CStringA strTemp(strSour);
int nSour= strSour.GetLength();
int nTemp=strTemp.GetLength();
在nSour(测试时用的是全角,而不是全角和半角结合)的长度小于300的时候,可以成功赋值给strTemp,这时候nSour=5, nTemp=7,取出的nTemp即为想求得的单字节数;
在nSour的长度大于300左右的时候,strTemp=””,赋值失败,而这时可以通过下面的方法得到单字节的数目
wchar_t *wstr = new wchar_t[strSour.GetLength() + 1];
_tcscpy(wstr,strSour);
DWORD dwNum = WideCharToMultiByte(CP_OEMCP,NULL,wstr,-1,NULL,0,NULL,FALSE);
int wordNum =(int)dwNum-1;
wordNum即为所求的单字节数