一、其他数据类型转换为字符串  

  短整型(int)

  itoa(i,temp,10);///将i转换为字符串放入temp中,最后一个数便是十进制

  itoa(i,temp,2);///按二进制方式转换

  长整型(long)

  Iota(I,temp,10);

  浮点数(float,doule)

  用fcvt可以完成转换,这是MSDN中的例子:

  int decimal,sign;

  char *buffer;

  decimal source = 3.1415926535;

  buffer = _fcvt(source,7,&decimal,&sign);

  运行结果:double source = 3.1415926535 buffer:'3.1415927' decimal:1 sign:0

  decimal表示小数点的位置,sign表示符号:0为正数,1为负数

  CString变量

  str=“2008北京奥运”;

  buf = (LRSTR)(LPCTSTR)str;

  BSTR变量

  BSTR bstrValue = ::SysAllocString(L“程序员”);

  char *buf = _com_util::ConvertBSTRToString(bstrValue);

  SysFreeString(bstrValue);

  AfxMessageBox(buf);

  delete(buf);

  CComBSTR变量

  CComBSTR bstrVar("test");

  char *buf = _com_util::ConvertBSTRToString(bstrVar.m_str);

  AfxMessageBox(buf);

  delete(buf);

  _bstr_t变量

  _bstr_t类型是对BSTR的封装,因为已经重载了=操作符,所以很容易使用

  _bstr_t bstrVar("test");

  const char *buf = bstrVar;///不要修改buf中的内容

  AfxMessageBox(buf);

  通用方法(针对非COM数据类型)

  用sprintf完成转换

  char buffer[200];char c= '1';int i = 35;long j= 1000;float f = 1.415615123f;sprintf(buffer,"%c",c); sprintf(buffer,"%d",i);sprintf(buffer,"%d",j);sprintf(buffer,"%f",f);

二、字符串转换为其他数据类型

  strcpy(temp,“123”);

  短整型(int)

  i = atoi(temp);

  长整形(long)

  I = atoI(temp);

  浮点(double)

  d = atof(temp);

  CString变量

  CString name = temp;

  BSTR变量

  BSTR bstrValue = ::SysAllocString(L"程序员");

  。。。///完成对bstrValue的使用

  SysFreeString(bstrVlaue);

  CComBSTR变量

  CComBSTR变量可以直接赋值

  CComBSTR bstrVar1("test");

  CComBSTR bstrVar2("temp");

  _bstr_t变量

  _bstr_t类型的变量可以直接赋值

  _bstr_t bstrVar1("test");

  _bstr_t bstrVar2(temp);

三、其他数据类型转换到CString

  使用CString的成员函数Format来转换,例如:

  整数(int)

  str.Format(“%d”,i);

  浮点数(float)

  str.Format("%f",i);

  字符串指针(char *)等已经被CString构造函数支持的数据类型可以直接赋值

  str = username;

  对于Format所不支持的数据类型,可以通过上面所说的关于其他数据类型转化到char*的方法先转到char*,然后赋值给变量。

  参考自:https://www.jb51.net/article/117099_all.htm

VC++类型转换的更多相关文章

  1. vc类型转换函数大全

    windows c++中存在各种类型,在实际应用过程中也需要将类型互相转换,故整理了常用类型之间的转换并将之封装成函数,仅供参考,有什么不对的地方,还请指正!   ****************** ...

  2. 【转载】VC++中的图像类型转换--使用开源CxImage类库

    一.CxImage类库简介 这只是翻译了CxImage开源项目主页上的部分简介及简单使用. CxImage类库是一个优秀的图像操作类库.它可以快捷地存取.显示.转换各种图像.有的读者可能说,有那么多优 ...

  3. VC++中的CString、char、int类型转换

    1.如何将CString类型的变量赋给char*类型的变量   方法一:GetBuffer函数  使用CString::GetBuffer函数.  char *p;  CString str=&quo ...

  4. 当C++多继承遇上类型转换[转]

      1 由来 客户用陈旧的VC++6.0进行项目开发,有一块功能需要我来实现.让一个早就习惯了VS2013的人去使用C++支持不太好的VC6去做开发实在是非常不爽,于是另辟蹊径,打算使用VC++201 ...

  5. 用VC进行COM编程所必须掌握的理论知识

    一.为什么要用COM 软件工程发展到今天,从一开始的结构化编程,到面向对象编程,再到现在的COM编程,目标只有一个,就是希望软件能象积方块一样是累起来的,是组装起来的,而不是一点点编出来的.结构化编程 ...

  6. 【应用笔记】【AN003】VC++环境下基于以太网的4-20mA电流采集

    简介 4-20mA电流环具有广泛的应用前景,在许多行业中都发挥着重要作用.本文主要介绍了以太网接口的4-20mA电流采集模块在VC++环境下进行温度采集,实现WINDOWS平台对数据的采集.分析及显示 ...

  7. 关于强制类型转换(c语言)

    因为今天看的代码中用到了结构体的强制类型转换,就很想了解一下结构体的强制类型转换是怎样的. 一个结构体如下: 在下面这段代码中rbuf->reqCmdBuf是一个空指针,首先将这个空指针赋值给一 ...

  8. VC操作ADO的基本策略

    一.ADO概述 ADO是Microsoft为最新和最强大的数据访问范例 OLE DB 而设计的,是一个便于使用的应用程序层接口.ADO 使您能够编写应用程序以通过 OLE. DB 提供者访问和操作数据 ...

  9. 有关C++ std::string 类的类型转换 其他语言永远无法理解的伤

    最近做了个项目,C++的MFC窗口程序,一个基于dialog的学生-图书管理系统,有一些感触,最后会放上一些项目截图和部分代码提供大家参考.如果有什么好方法和建议欢迎指导. 强类型,为什么这么伤 我知 ...

随机推荐

  1. SpringMVC 捕获参数绑定失败时的异常

    SpringMVC配置数据验证(JSR-303)中提到了用String类型的域来绑定Ajax中的非法类型的参数. 这样做的目的是一旦发生一种情况,后端可以返回一个自定类的返回值,而不是返回Spring ...

  2. class与computed一起应用

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. 【2018.07.30】(广度优先搜索算法/队列)学习BFS算法小记

    一些BFS参考的博客: https://blog.csdn.net/ldx19980108/article/details/78641127 https://blog.csdn.net/u011437 ...

  4. ubuntu16.04安装matlab_R2018a/R2017a

    ubuntu16.04安装matlab_R2018a/R2017a 1. 文件准备 我把Matlab2018a安装镜像及破解文件放在了/home/haes/Downloads/matlab下 2.挂载 ...

  5. web框架性能点

    awesome-go-web-frameworks/README.md at master · speedwheel/awesome-go-web-frameworkshttps://github.c ...

  6. ES--Kibana相关操作创建索引和Mapping

    创建索引 kibana 使用如下命令进行创建索引内容. PUT test_index/ 创建别名 POST _aliases { "actions": [{ "add&q ...

  7. PHP使用MongoDB存储经纬度,查询距离

    https://blog.csdn.net/qq_40012295/article/details/84861466 https://docs.mongodb.com/manual/reference ...

  8. JavaScript箭头函数(Lambda表达式)

    箭头函数也叫lambda表达式 据说其主要意图是定义轻量级的内联回调函数 栗有: 1 var arr = ["wei","ze","yang" ...

  9. zblog上传安装主题插件不成功的原因和解决办法

    最近有不少zblog用户反映在后台上传安装主题或者插件的时候出现了问题.本文就来尝试说明下这类问题的原因和解决办法. 首先来说说zblog主题或者插件的安装方法,一共有三种方式: 第一种是直接在网站后 ...

  10. webpack——Modules && Hot Module Replacement

    blog:JavaScript Module Systems Showdown: CommonJS vs AMD vs ES2015 官网链接: Modules 官网链接:Hot Module Rep ...