CString, string, char *之间的相互转换(转)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Date: 2018.09.02

  • 1. string→CString
CString.format("%s", string.c_str());
  • 2. CString→string
string str(CString.GetBuffer(str.GetLength()));
  • 3. string→char *
char *p = string.c_str();
  • 4. char *→string
string str(char *);
  • 5. CString→char *
strcpy(char, CString, sizeof(char));
  • 6. char *→CString
CString.format("%s", char *);

  CString的format和string的c_str()是非常常用的;需要注意的是:和char *转换时,要把char定义为const char *,这样是最安全的。

  以上函数UNICODE编码也没问题:需要加_T()宏,即_T("%s");


CString可能是CStringW / CStringA,在与string转换时,如果是CStringW,会涉及到编码的转换问题。


 

猜你喜欢

转载自www.cnblogs.com/xiawuhao2013/p/9574555.html
今日推荐