LPCTSTR与string之间的转换(lpctstr)

发布时间:2023-04-23 10:00:47 编辑: 来源:
导读 大家好,小讯来为大家解答以上的问题。LPCTSTR与string之间的转换,lpctstr这个很多人还不知道,现在让我们一起来看看吧!1、LPCTSTR类型:L...

大家好,小讯来为大家解答以上的问题。LPCTSTR与string之间的转换,lpctstr这个很多人还不知道,现在让我们一起来看看吧!

1、LPCTSTR类型:L表示long指针 这是为了兼容Windows 3.1等16位操作系统遗留下来的,在win32中以及其他的32位操作系统中, long指针和near指针及far修饰符都是为了兼容的作用。

2、没有实际意义。

3、P表示这是一个指针。

4、C表示是一个常量。

5、T表示在Win32环境中, 有一个_T宏。

6、STR表示这个变量是一个字符串。

7、LPCTSTR表示一个指向常固定地址的可以根据一些宏定义改变语义的字符串。

8、同样,LPCSTR就只能是一个ANSI字符串,在程序中我们大部分时间要使用带T的类型定义。

9、LPCTSTR == const TCHAR *  CString 和 LPCTSTR 可以说通用。

10、 原因在于CString定义的自动类型转换,没什么奇特的,最简单的C++操作符重载而已。

11、  常量字符串ansi和unicode的区分是由宏_T来决定的。

12、但是用_T("abcd")时, 字符串"abcd"就会根据编译时的是否定一_UNICODE来决定是char* 还是 w_char*。

13、 同样,TCHAR 也是相同目的字符宏。

14、 看看定义就明白了。

15、简单起见,下面只介绍 ansi 的情况,unicode 可以类推。

本文到此分享完毕,希望对大家有所帮助。

免责声明:本文由用户上传,如有侵权请联系删除!

热点推荐

精选文章