C++学习——CString,char * ,string的相互转换

C++学习——CString,char * ,string的相互转换CString头文件#include <afx.h>string头文件#include <string.h>1、CString转char *CString cstr;char *p =(LPSTR)(LPCTSTR)cstr;2、string转 CStringCString.format(”%s”, string.c_str());用c_str()确实比dat…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

CString头文件#include <afx.h>

string头文件#include <string.h>

1、CString转char *

CString cstr;

char *p =(LPSTR)(LPCTSTR)cstr;

2、string转 CString
CString.format(”%s”, string.c_str());

用c_str()确实比data()要好.

3、char转 CString
CString.format(”%s”, char*);

4、char转 string
string s(char *);

只能初始化,在不是初始化的地方最好还是用assign().

5、string转 char *
char *p = string.c_str();

6、CString转 string
string s(CString.GetBuffer());

GetBuffer()后一定要ReleaseBuffer(),否则就没有释放缓冲区所占的空间。


《C++标准函数库》中说的
有三个函数可以将字符串的内容转换为字符数组和C―string
1、data(),返回没有”/0“的字符串数组
2、c_str(),返回有”/0“的字符串数组
3、copy()


CString与int、char*、char[100]之间的转换

1、CString互转int

(1)将字符转换为整数,可以使用atoi、_atoi64或atol。
(2)将数字转换为CString变量,可以使用CString的Format函数。如
CString s;
int i = 64;
s.Format(”%d”, i)
Format函数的功能很强,值得你研究一下。

voidCStrDlg::OnButton1()
{ 
   
   // TODO: Add your control notificationhandler code here
   CString
   ss=1212.12;
   int temp=atoi(ss);
   CString aa;
   aa.Format(%d”,temp);
   AfxMessageBox(”var is ” + aa);
}

sart.Format(%s”,buf);

2、CString互转char*

CString strtest;
char * charpoint;

///char * TO cstring
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就可以了。

3、CString转换 char[100]

///char[100] TOcstring

char a[100];
CString str(”aaaaaa”);

///cstring TO char[100]

strncpy(a,(LPCTSTR)str,sizeof(a));

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/170944.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • IntellIJ IDEA 配置 Maven和修改默认Repository

    IntellIJ IDEA 配置 Maven和修改默认Repository

    idea 2021年10月2日
    58
  • JSP简明教程「建议收藏」

    1、jsp是什么?1)jsp:javaserverpages2)jsp运行在服务器3)jsp的基础是servlet,相当于对servlet进行一个包装4)jsp无需配置,直接使用,如果修改了jsp文件,不需要重新reloadweb应用5)jsp访问方法:http://ip:8080/web应用名/jsp路径6)jsp是一种动态网页技术2、JSP=html+java片段+JSP标签(语法)+j

    2022年4月16日
    51
  • 使用maven整合SSH框架详细步骤

    使用maven整合SSH框架详细步骤

    2021年9月26日
    45
  • 阶乘算法优化「建议收藏」

    阶乘算法优化「建议收藏」原文地址:http://blog.csdn.net/yxnk/article/details/1665052我的感言:首先,有一个概念上的认知,即根据阶乘定义而来的常规算法,如果是longint型只能正确计算到12左右的阶乘,如果用double型只能正确计算170左右的阶乘,当然这些只是大概,需要结合实际平台进行验证。下面是原文:序大数阶乘的计算是一个有趣的话题,从中学生到大学教

    2022年7月24日
    7
  • 论物联网与大数据、云计算、工业物联网、区块链「建议收藏」

    论物联网与大数据、云计算、工业物联网、区块链「建议收藏」论物联网与大数据、云计算、工业物联网、区块链我们当今的时代飞速发展,物联网、大数据、云计算这些名词在我们的生活中出现的越来越频繁,看似高大上的三者其实却和我们的生活息息相关。本篇文章就物联网、大数据以及云计算对三者之间的关系以及应用进行描述。工业物联网和区块链也进行了介绍。(一)物联网(1)什么是物联网物联网(InternetofThings,简称IoT)是指通过各种信息传感器、射频识别技术、全球定位系统、红外感应器、激光扫描器等各种装置与技术,实时采集任何需要监控、连接、互动的物体或过程,采

    2022年9月26日
    1
  • 海贼王最新漫画图片_海贼王漫画52pk

    海贼王最新漫画图片_海贼王漫画52pk制作工具模块-隐藏身份信息的User-Agent模块;对象服务器识别不了身份信息。importrandomuser_agent_data=[{“User-Agent”:”Mozilla/5.0(WindowsNT10.0;WOW64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/65.0.3314.0Safari/537.36SE2.XMetaSr1.0″},{“Use

    2022年8月23日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号