BSTR是字串,"ABCDEFG\0"之前字元的ascii編碼數組。
CHAR是字元,以上每一個都是一個CHAR
WCHAR是Wide CHAR就是寬字元,顧名思義,2個CHAR空間儲存的字元的Unicode編碼。這個編碼。。。 沒法舉例了。不記得~ Top
2樓 EnochShen (小瘋子:真的好菜—知恥而後勇!) 回複於 2005-03-05 23:54:50 得分 0 WCHR是wchar_t BSTR是wchar_t*,CHAR是char
wchar_t是Unicode用的寬字元類型。用雙字表示的字元.漢字字元即為雙字
可以用Win32Api的MultiByteToWideChar/WideCharToMultiByte或C運行庫的mbstowcs/wcstombs系列函數對wchar_t* 和 char* 之間進行轉換 Top
3樓 masterz (www.fruitfruit.com) 回複於 2005-03-06 00:08:48 得分 0 BSTRs are wide, double-byte (Unicode) strings on 32-bit Windows platforms and narrow, single-byte strings on the Apple PowerMac.
BSTR只能用SysAllocString/SysFreeString來管理,
wchar_t* 可以通過new/delete來管理。
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/automat/htm/chap7_5alv.asp
BSTR本身儲存有string的長度:The length is stored as a 32-bit integer at the memory location preceding the data in the string.
Top
4樓 cn2000 (菜鳥2000) 回複於 2005-03-06 21:55:28 得分 0 up... Top
5樓 cn2000 (菜鳥2000) 回複於 2005-03-10 10:39:42 得分 0 還有一個問題:
TCHAR szBuffer[512];
wsprintf(szBuffer,_T("errord"));
SysAllocString(szBuffer);
最後一行編譯通不過.
error C2664: 'SysAllocString' : cannot convert parameter 1 from 'char [512]' to 'const unsigned short *'
Top
相關問題
- BSTR與WCHR的區別在什麼地方?
- 寫COM用bstr的時候“bstr” : 未聲明的標識符,要include什麼啊?
- 全文檢索索引和模糊檢索的區別到底在什麼地方?
- 程式在別的地方出錯,高手進來看看還有什麼地方要注意的。
- _bstr_t bstrtxt為什麼報“_bstr_t” : 未聲明的標識符?
- 有什麼辦法可以查出記憶體流失(OutOfMemory)發生在什麼地方?
- J2ee j2me是什麼東西阿,有什麼區別麼
- visual studio.net 中帶的vc++和vc++ 6.0有什麼有什麼區別嗎?
- 只知道Struts,詢問一下還有什麼好的架構,Spring,webwork....有什麼區別?
- 請問xml裡面element和node有什麼區別,他們之間有什麼辦法進行轉換?
網站簡介-廣告服務-網站地圖-協助資訊-連絡方式-English-問題報告
CSDN北京百聯美達美數位科技有限公司 著作權 京 ICP 證 020026 號 CSDN
2000-04, CSDN.NET, All Rights Reserved