MFC、C++、C中字符类型CStringintstringchar知识[借鉴].pdfVIP

  • 6
  • 0
  • 约1.04万字
  • 约 10页
  • 2021-10-19 发布于福建
  • 举报

MFC、C++、C中字符类型CStringintstringchar知识[借鉴].pdf

MFC/C++/C 中字符类型 CString, int, string, char* 转换 (转) 参考网址: /s/blog_50a0aa5e0100dntj.html 1 CString,int,string,char* 之间的转换 string 转 CString 例子: CString.format(%s, string.c_str()); char 转 CString 例子: CString.format(%s, char*); char 转 string 例子: string s(char *); string 转 char * 例子: char *p = string.c_str(); // CString 转 std::string CString str = dlg.GetPathName(); setlocale(LC_ALL, chs); char *p = new char[256]; wcstombs ( p, str, 256 ); m_fileName = p; 1,string - CString CString.format(%s, string.c_str()); 用 c_str() 确实比 data()要好 . 2 ,char - string string s(char *); 你的只能初始化,在不是初始化的地方最好还是用 assign(). 3,CString - string string s(CString.GetBuffer()); GetBuffer() 后一定要 ReleaseBuffer(), 否则就没有释放缓冲区所占的空间 . 《C++ 标准函数库》中说的 有三个函数可以将字符串的内容转换为字符数组和 C— string 1.data(),返回没有” \0 “的字符串数组 2,c_str() ,返回有” \0 “的字符串数组 3 ,copy() CString 互转 int 将字符转换为整数,可以使用 atoi、_atoi64 或 atol。 而将数字转换为 CString 变量,可以使用 CString 的 Format 函数。如 CString s; int i = 64; s.Format(%d, i) Format 函数的功能很强,值得你研究一下。 void CStrDlg::OnButton1() { // TODO: Add your control notifation handler code here CString ss=1212.12; int temp=atoi(ss); CString aa; aa.Format(%d,temp); AfxMessageBox(var is + aa); } sart.Format(%s,buf); CString 互转 char* ///char * TO cstrin CString strtest; char * charpoint; charpoint=give string a value; strtest=charpoint; ///cstring TO char * charpoint=strtest.GetBuffer(strtest.GetLength()); 标准 C 里没有 string,char *==char []==string 可以用 CString.Format(%s,char *) 这个方法来将 char * 转成 CString 。要把 CString 转成 char * , 用操符( LPCSTR )CString 就可以了。 CString 转换 char[100] char a[100]; CString str(aaaaaa); strncpy(a,(LPCTSTR)str,sizeof(a)); 2 CString 类型的转换成 int CString 类型的转换成 int 将字符转换为整数,可以使用

文档评论(0)

1亿VIP精品文档

相关文档