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,會涉及到編碼的轉換問題。


 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM