MFC+类型转换[借鉴].pdfVIP

  • 0
  • 0
  • 约2.42万字
  • 约 23页
  • 2021-10-19 发布于福建
  • 举报
VC++类型转换整理 已有 84 次阅读 2009-11-30 16:18 标签 : 类型 1、CString to char* 经过类型强制转换,可以将 CString 类型转换成 char* ,例如: CString cStr = Hello,world!; char* zStr = (char*)(LPCTSTR)cStr; 2、char* to CString char* 类型可以直接给 CString ,完成自动转换,例如: char* zStr = Hello,world!; CString cStr = zStr; 3、CString to LPCSTR 将 CString 转换成 LPCSTR,需要获得 CString 的长度,例如: CString cStr = _T(Hello,world!); int nLen = cStr.GetLength(); LPCSTR lpszBuf = cStr.GetBuffer(nLen); 4 、CString to LPSTR 这个和第 3 个技巧是一样的,例如: CString cStr = _T(Hello,world!); int nLen = str.GetLength(); LPSTR lpszBuf = str.GetBuffer(nLen); 5、Char[] to int 将字符串类型转换成整数型,可以使用 atoi 函数,例如: char c[10]; int n; n = atoi?; 6、Char[] to float 和第 5 个技巧一样,使用 atof() 函数可以转换成 float 型,例如: char c[10]; float f; f = atof?; 7、Char* to int 和第 5 个技巧完全一样,例如: char *str = 100; int i; i = atoi(str); 一、其它数据类型转换为字符串 短整型 (int) itoa(i,temp,10);/// 将 i 转换为字符串放入 temp 中, 最后一个数字表示十进制 itoa(i,temp,2); /// 按二进制方式转换 长整型 (long) ltoa(l,temp,10); 二、从其它包含字符串的变量中获取指向该字符串的指针 CString 变量 str = 2008 北京奥运 ; buf = (LPSTR)(LPCTSTR)str; BSTR类型的 _variant_t 变量 v1 = (_bstr_t) 程序员 ; buf = _com_util::ConvertBSTRToString((_bstr_t)v1); 三、字符串转换为其它数据类型 strcpy(temp,123); 短整型 (int) i = atoi(temp); 长整型 (long) l = atol(temp); 浮点 (double) d = atof(temp); 四、其它数据类型转换到 CString 使用 CString 的成员函数 Format 来转换 , 例如 : 整数 (int) str.Format(%d,i); 浮点数 (float) str.Format(%f,i); 字符串指针 (char *) 等已经被 CString 构造函数支持的数据类型可以直接赋值 str = username; 五、 BSTR、_bstr_t 与 CComBSTR CComBSTR、_bstr_t 是对 BSTR的封装 ,BSTR是指向字符串的 32 位指针。 char * 转换到 BSTR可以这样 : BSTRb=_com_util::ConvertStringToBSTR( 数据 );/// 使用前需要加上头文件 comutil.h 反之可以使用 char *p=_com_util::ConvertBSTRToString(b); 六、 VARIANT、_variant_t 与 COleVariant VARIANT的结构可以参考头文件

文档评论(0)

1亿VIP精品文档

相关文档