欢迎来到天天文库
浏览记录
ID:37905505
大小:102.00 KB
页数:28页
时间:2019-06-02
《VC常用数据类型转换》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、VC常用数据类型转换VC常用数据类型转换2009-11-2710:10 91人阅读 评论(0) 收藏 举报一、BSTR、LPSTR和LPWSTR 在VisualC++.NET的所有编程方式中,我们常常要用到这样的一些基本字符串类型,如BSTR、LPSTR和LPWSTR等。之所以出现类似上述的这些数据类型,是因为不同编程语言之间的数据交换以及对ANSI、Unicode和多字节字符集(MBCS)的支持。 那么什么是BSTR、LPSTR以及LPWSTR呢? BSTR(BasicSTRing,Basic字符串)是一个OLECHAR*类型的Unicode字符串。它被
2、描述成一个与自动化相兼容的类型。由于操作系统提供相应的API函数(如SysAllocString)来管理它以及一些默认的调度代码,因此BSTR实际上就是一个COM字符串,但它却在自动化技术以外的多种场合下得到广泛使用。图1描述了BSTR的结构,其中DWORD值是字符串中实际所占用的字节数,且它的值是字符串中Unicode字符的两倍。 LPSTR和LPWSTR是Win32和VC++所使用的一种字符串数据类型。LPSTR被定义成是一个指向以NULL(‘/0’)结尾的8位ANSI字符数组指针,而LPWSTR是一个指向以NULL结尾的16位双字节字符数组指针。在VC++
3、中,还有类似的字符串类型,如LPTSTR、LPCTSTR等,它们的含义如图2所示。 例如,LPCTSTR是指“longpointertoaconstantgenericstring”,表示“一个指向一般字符串常量的长指针类型”,与C/C++的constchar*相映射,而LPTSTR映射为char*。 一般地,还有下列类型定义:#ifdefUNICODE typedefLPWSTRLPTSTR; typedefLPCWSTRLPCTSTR; #else typedefLPSTRLPTSTR; typedefLPCSTRLPCTSTR; #endif二、C
4、String、CStringA和CStringW28/28VC常用数据类型转换VC常用数据类型转换2009-11-2710:10 91人阅读 评论(0) 收藏 举报一、BSTR、LPSTR和LPWSTR 在VisualC++.NET的所有编程方式中,我们常常要用到这样的一些基本字符串类型,如BSTR、LPSTR和LPWSTR等。之所以出现类似上述的这些数据类型,是因为不同编程语言之间的数据交换以及对ANSI、Unicode和多字节字符集(MBCS)的支持。 那么什么是BSTR、LPSTR以及LPWSTR呢? BSTR(BasicSTRing,Basic字符
5、串)是一个OLECHAR*类型的Unicode字符串。它被描述成一个与自动化相兼容的类型。由于操作系统提供相应的API函数(如SysAllocString)来管理它以及一些默认的调度代码,因此BSTR实际上就是一个COM字符串,但它却在自动化技术以外的多种场合下得到广泛使用。图1描述了BSTR的结构,其中DWORD值是字符串中实际所占用的字节数,且它的值是字符串中Unicode字符的两倍。 LPSTR和LPWSTR是Win32和VC++所使用的一种字符串数据类型。LPSTR被定义成是一个指向以NULL(‘/0’)结尾的8位ANSI字符数组指针,而LPWSTR是一
6、个指向以NULL结尾的16位双字节字符数组指针。在VC++中,还有类似的字符串类型,如LPTSTR、LPCTSTR等,它们的含义如图2所示。 例如,LPCTSTR是指“longpointertoaconstantgenericstring”,表示“一个指向一般字符串常量的长指针类型”,与C/C++的constchar*相映射,而LPTSTR映射为char*。 一般地,还有下列类型定义:#ifdefUNICODE typedefLPWSTRLPTSTR; typedefLPCWSTRLPCTSTR; #else typedefLPSTRLPTSTR; ty
7、pedefLPCSTRLPCTSTR; #endif二、CString、CStringA和CStringW28/28VC常用数据类型转换VC常用数据类型转换2009-11-2710:10 91人阅读 评论(0) 收藏 举报一、BSTR、LPSTR和LPWSTR 在VisualC++.NET的所有编程方式中,我们常常要用到这样的一些基本字符串类型,如BSTR、LPSTR和LPWSTR等。之所以出现类似上述的这些数据类型,是因为不同编程语言之间的数据交换以及对ANSI、Unicode和多字节字符集(MBCS)的支持。 那么什么是BSTR、LPSTR以及LPWST
8、R呢?
此文档下载收益归作者所有