LPTSTR转换为std::string方法探索

长平狐 发布于 2013/12/25 17:25
阅读 464
收藏 0

在VC编程中,经常会遇到字符串之间的转换,本文就LPTSTR转换为std::string进行探讨。

在unicode环境下,LPTSTR表示宽字符

有两种方法

1、

LPTSTR sddd = _T("ddddd");
  char *ansiRemoteHost = new char[wcslen(sddd)*2+1];
  memset(ansiRemoteHost,0,wcslen(sddd)*2+1);
  WideCharToMultiByte(CP_ACP,WC_COMPOSITECHECK,sddd,wcslen(sddd)
   ,ansiRemoteHost,wcslen(sddd),NULL,NULL);
  string sddddd = string(ansiRemoteHost);

 

2、

LPTSTR sddd = _T("ddddd");
CString sChar = CString(sddd);
USES_CONVERSION;
string sddddd = string(T2A(sChar));

 

当然,环境不同,转换的方法也就不一样。


原文链接:http://blog.csdn.net/zhouxuguang236/article/details/8742608
加载中
返回顶部
顶部