首页 > 其他分享 >VS2010中将CString转换为const char*

VS2010中将CString转换为const char*

时间:2022-12-26 10:13:58浏览次数:43  
标签:pstr 转换 CString VS2010 char strsize const

最近碰到了CString 转 const char *的问题。

以前只要简单的一个强制转换就OK了,可现在是不行了,搜索了很多资料,终于搞定,主要是Unicode和ANSI的问题,只要做一个转换就可以了,不过这个过程远没有6.0来的那么轻松。下面这段转换代码也是从MSDN上获取的。

CString str=_T("这是我的测试程序。");
// 先得到要转换为字符的长度
const size_t strsize=(str.GetLength()+1)*2; // 宽字符的长度;
char * pstr= new char[strsize]; //分配空间;
size_t sz=0;
wcstombs_s(&sz,pstr,strsize,str,_TRUNCATE);

int n=atoi(const char*)pstr); // 字符串已经由原来的CString 转换成了 const char*

//没有这番转换会报错,无法将LPCTSTR或CString 转换为const char*

就是每次转换都要写一堆上面的过程了,呵呵。

不过收获还是不少。

标签:pstr,转换,CString,VS2010,char,strsize,const
From: https://www.cnblogs.com/kn-zheng/p/17005072.html

相关文章

  • c++const关键字
    1、用来定义常量2、定义常量指针不可通过常量指针修改其指向的内容intn,m;constint*p=&n;//编译出错,通过常量指针p修改了n的值是不允许的*p=5;n=4;/......
  • 面试官:你说说var、let、const三者的区别
    大家好,我是CoderBin前言面试官:“你说说var、let、const三者的区别”紧张的萌新:“var没有块级作用域,let有......”面试官:“...”······本次又来到了面试官系列,变......
  • sdo is constant hign
    很久前下载STM32程序时发现这个问题,下载不进去。 估计下载线中哪根线出问题了,电压不支持。 解决方法1,2是网上的,3是自己乱摸索发现的,不是很好的方法。1.重新上电或......
  • [CF1748D] ConstructOR
    题目描述Youaregiventhreeintegers$a$,$b$,and$d$.Yourtaskistofindanyinteger$x$whichsatisfiesallofthefollowingconditions,orde......
  • Cstring转string
    //第一种方式:CStringstr=_T("CSDN");USES_CONVERSION;std::strings(W2A(str));//第二种方式:CStringstr=_T("CSDN");std::strings=(CT2A)str;string转CstringCS......
  • MFC中的CString类使用方法指南
    MFC中的CString类使用方法指南codeproject:CStringManagement【禾路:这是一篇比较老的资料了,但是对于MFC的程序设计很有帮助。我们在MFC中使用字符串的相关操作,首先想到的就......
  • Euclidea3.6 Construct a line passing through the midpoints of the trapezoid base
    Constructalinepassingthroughthemidpointsofthetrapezoidbases.证明:过点\(F\)作\(h\parallelAB\)\(\triangleBFI\sim\triangleBCD\)、\(\triang......
  • TypeError: Assignment to constant variable
    场景: 使用跨组件通信时,想通过重置父组件的值时,浏览器报错TypeError:AssignmenttoconstantvariableES6标准引入了新的关键字const来定义常量,const与let都具有块......
  • const成员,流插入,流提取重载,初始化列表! 流插入,流提取的重载(6千字长文详解!)
    c++详解之const成员,流插入,流提取重载,初始化列表!<<流插入和>>流提取的重载#include<iostream>usingnamespacestd;intmain(){inta=0;doubleb=1.......
  • ASP.NET(C#) VS2010连接Oracle数据库
    数学基础是通信密码学原理关键,我建议大家找几个比较靠谱入门的机器学习或者人工智能学习平台,在此推荐一个我看过的小白人工智能入门教程,零基础教程,首先介绍个人环境:win7+V......