1:SBCS (single byte character set)單字節字符集。在這種編碼格式下,所有字符都用一個字節表示。ASCII碼就是單字節字符。用“0”來表示一個字節的結束。
2 :Unicode 是一種所有的字符都使用兩個字節編碼的編碼模式。Unicode 字符有時也被稱作 寬字符。
3:MBCS (multi-byte characters set)多字節字符集。在windows裡面 MBCS 包含兩種字符類型:單字節字符(single byte characters)和雙字節字符(double byte characters)。 由於windows裡使用的多字節字符絕大部分是兩個字節長,MBCS常被DBCS代替。
MBCS 編碼
1 CString strName1 = _T("你好"); 2 int nLen = strName1.GetLength(); // 4 3 4 _bstr_t bstrName1 = (_bstr_t)strName1; 5 nLen = bstrName1.length(); // 2 6 7 CString strName2 = _T("abcd"); 8 nLen = strName2.GetLength(); // 4 9 10 _bstr_t bstrName2 = (_bstr_t)strName2; 11 nLen = bstrName2.length(); // 4
Unicode 編碼
1 CString strName1 = _T("你好"); 2 int nLen = strName1.GetLength(); // 2 3 4 _bstr_t bstrName1 = (_bstr_t)strName1; 5 nLen = bstrName1.length(); // 2 6 7 CString strName2 = _T("abcd"); 8 nLen = strName2.GetLength(); // 4 9 10 _bstr_t bstrName2 = (_bstr_t)strName2; 11 nLen = bstrName2.length(); // 4