CString 是一种很有用的数据类型。它们很大程度上简化了MFC中的许多操作,使得MFC在做字符串操作的时候方便了很多。CString位于头文件afx.h中。在编程中我们时常会遇到将CString类型转换为Char[]类型的情况。

在图中的情况中,需要将输入框中的字符串(CString类型s_Input)转换为Char[]类型(char_sInput[]),方便后面的处理,在网上找了许多关于此类转换的方法,最后使用memcpy函数实现该转换,memcpy()函数是通过内存的拷贝实现的转换,不受数据类型的限制,与strcpy()函数有所区别,使用范围更广,详细的区别可参考:strcpy和memcpy的区别。

编译和运行都没有出错,但是运行的结果不是自己想要的,断点调试找到了memcpy()这里:

"RU LF UB DR DL BL UL FU BD RF BR FD LDF LBD FUL RFD UFR RDB UBL RBU"为转换之前的字符串,转换之后每个字符占用两个char类型的存储空间,表现为每个字母后都多了一个0(包括空格)。可见方法只有验证了才能知道是不是真的行得通。

为了找出问题的原因,另外单独建立个一个工程,实现CString类型到Char[]类类型的转换,调试的结果和之前一样,提示中注意到一个新的问题:char asd[100];监视asd,而不是监视asd[100],asd[100]只被当作一个变量。

最后通过网友编写的代码(CString转char[]函数)实现了该转换:

1.头文件中声明函数(35行):

2.cpp文件中函数实现:

3.运行效果:

代码 下载:MSDN代码 云盘

【VC++类型转换】CString类型到Char[]类型的转换相关推荐

  1. #码神心得_03# 浮点类型、char类型

    这是码神Android第三次课程内容,主要讲了浮点类型.char类型的一些基础知识 上次由于塞车让老师和同学们等了半个多钟才到,真的非常抱歉..以后会尽量提前过去的. 心得总结: 1.浮点类型floa ...

  2. c++ string类型转换为char *类型

    string 是c++标准库里面其中一个,封装了对字符串的操作 把string转换为char* 有3中方法: 1.data 如: string str="abc"; char *p ...

  3. c语言中int类型与char类型数据转换

    1.char----->int: 少字节类型转换为多字节类型,没有影响,数据也不会发生变化. #include <stdio.h> int main() {char cret = 0 ...

  4. CString,int,string,char*之间的转换

    <C++标准函数库>中说的   有三个函数可以将字符串的内容转换为字符数组和C-string   1.data(),返回没有"\0"的字符串数组   2,c_str() ...

  5. CString,int,string,char*之间的转换(转)

    ............................................................... <C++标准函数库>中说的   有三个函数可以将字符串的内容 ...

  6. MFCC中CString, int, string, char之间的转换

    1.    CString  -->  char* (1)传给未分配内存的指针 CString cstr ="ASDDSD"; char *ch =cstr.GetBuffe ...

  7. int类型与char类型

    比较下面三个定义式的区别: int i = 1; char i = 1; char i = '1'; int用来定义整型变量,char用来定义字符型变量,要清楚的知道三个定义式的区别,可以比较它们在内 ...

  8. C语言char类型及其类型转换的变化

    目录: char类型 转义字符 char类型 首先我们要知道char类型为一个字节. 而且要知道他在计算机中的储存方式. 一个字节8个bite,int类型32bite,0x00 00 00 01刚好没 ...

  9. 4.2 char类型介绍

    C语言学习栏目目录 目录 4.1 int类型介绍 4.2 char类型介绍 4.3 float.double类型介绍 4.4 小结及其他数据类型简单介绍 4.5 类型大小 char类型用于储存字符(如 ...

  10. C语言char类型的存储

    目录 char是如何存储的 char的类型 char的取值范围 例题 char是如何存储的 字符型(char)用于储存字符(character),如英文字母或标点.但是char类型在内存中并不是以字符 ...

最新文章

  1. 哈佛新冠论文用百度写,川普很满意,英国媒体BBC都看不下去:好歹搜索方法要用对呀!...
  2. 香港中文大学(深圳)韩晓光博士团队招聘博士后和工程师多名
  3. [PAL编程规范]SAP HANA PAL多项式回归预测分析Polynomial Regression编程规范FORECASTWITHPOLYNOMIALR(预测)...
  4. 05_MyBatis基于注解的开发
  5. ES6标准入门(第二版)pdf
  6. spring mvc学习(46):自定义配置类
  7. 根据IP地址获取主机名称
  8. 新基建系列之:中国城市人工智能发展指数报告
  9. JavaScript数据类型 typeof, null, 和 undefined
  10. python 图片 变清晰_python模糊图片过滤的方法
  11. 认知维度与API的可用性评估
  12. wincc怎么做一个弹出画面_Wincc如何利用单个弹出窗口画面的模板,来实现调用多组画面参数?...
  13. IPv4地址-地址分类与用途
  14. php ziparchive 类不存在,php – 致命错误:类’ZipArchive’中找不到
  15. 团队项目-Recycle需求规格说明书
  16. 机器学习(聚类八)——密度聚类
  17. 广州大学锐捷认证协议安全性研究
  18. win7 计算机不显示u盘启动不了,Win7系统下bios中找不到U盘启动项如何解决
  19. android按返回键和Home键都进入后台
  20. 在移动硬盘中安装win10和macos双系统

热门文章

  1. springboot实现数据库数据导出到Excel中并下载到浏览器本地
  2. oracle递归树查询
  3. Error: Invalid or corrupt
  4. oracle浪潮优派,检查数据库的CPU和PSU补丁信息
  5. pythonopencv算法_OpenCV算法精解 基于Python与C++pdf
  6. python 运行时 变量_在运行时在python中检索变量的名称?
  7. SpringMVC学习笔记(1)-SpringMVC介绍
  8. ORBSLAM关键帧的筛选和插入
  9. 论文笔记_S2D.22_2015-CVPR_利用深度特征回归和分层CRFs对单目图像进行深度和表面法线估计
  10. C++_CopyConstructor(副本构造器 防止指针重复释放)