您的位置首页  资讯

lpctstr C表示是一个常量

LPCTSTR是指向常量字符串的长指针,即(LongPointertoConsTantSTRing)。CString类有一个操作符operatorLPCTSTR()const,可以用来转换的。假如有一个CString类型的变量str,在要使用LPCTSTR的地方这样转换就可以了LPCTSTR(st

LPCTSTR是指向常量字符串的长指针,即(Long Pointer to ConsTant STRing)。

CString类有一个操作符operator LPCTSTR ( ) const,可以用来转换的。

假如有一个CString类型的变量str,在要使用LPCTSTR的地方这样转换就可以了LPCTSTR (str)。

其实有些版本的编译器不需要转换就直接可以用的。

汪晓丝2021-03-19 10:36:25typedef const TCHAR* LPCTSTR;而 TCHAR 宏会根据选择的项目字符集,自动展开为 wchar_t 或 char.所以 LPCTSTR 其实就是 const char* 或 const wchar_t*。

逮浩博2021-03-21 07:57:14LPCTSTR可以用CString代用的.LPCTSTR A 32-bit pointer to a constant character string that is portable for Unicode and DBCS.比如列表控件 AddString(LPCTSTR lpszItem),参数用CString可以的.万宜年2021-03-23 09:44:57LPCTSTR类型:L表示long指针 这是为了兼容Windows 3.1等16位操作系统遗留下来的,在win32中以及其他的32位操作系统中, long指针和near指针及far修饰符都是为了兼容的作用。

没有实际意义。

P表示这是一个指针。

C表示是一个常量。

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

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

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

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

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

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

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

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

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

看看定义就明白了。

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

须伟才2021-03-22 23:35:16long point to const string

免责声明:本站所有信息均搜集自互联网,并不代表本站观点,本站不对其真实合法性负责。如有信息侵犯了您的权益,请告知,本站将立刻处理。
网站推荐更多>>