今天来聊聊关于lpctstr的文章,现在就为大家来简单介绍下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 可以类推。
相信通过lpctstr这篇文章能帮到你,在和好朋友分享的时候,也欢迎感兴趣小伙伴们一起来探讨。
标签:
免责声明:本文由用户上传,如有侵权请联系删除!