转载至:https://blog.csdn.net/qq_18410319/article/details/90487796

一、string->char*

1、将string转char*,可以使用string提供的c_str()或者data()函数。其中c_str()函数返回一个以'\0'结尾的字符数组,而data()仅返回字符串内容,而不含有结束符'\0'。

2、const char* c_str();

c_str()函数返回一个指向C字符串的指针,该指针指向内存内容和string 相同。因为c语言不支持string类型,故为了在c++兼容C字符串,提供了c_str()函数来实现转换。注意一定要使用strcpy()函数来操作c_str();c_str()返回的是一个临时指针,不能对其进行操作。

下面开始:string 转 char*
char ch[20];
 
string s="123456";
 
strcpy(ch,s.c_str());

c_str()以char* 形式传回string内含字符串

如果一个函数要求char*参数,可以使用c_str()方法:

string str="123456";
 
printf("%s",str.c_str());

/

const char* p=a.data();
 
const char* p=a.c_str();
 
char* p=const_cast<char*>(a_str());

2.char* 转 string

string s;
 
char* p ="hello";
 
s = p;

3.string转char[]

string pp = "dagah";
  char p[8];
  int i;
  for( i=0;i<pp.length();i++)
    p[i] = pp[i];
  p[i] = '\0';
  printf("%s\n",p);
  cout<<p;

4.char[] 转string

直接赋值

String 与 char* 相互转换相关推荐

  1. MFC开发- string、const char*、 char* 、char[]相互转换(全)

    string.const char*. char* .char[]四者类型经常会需要转化. 一:转化总结形式如下: 使用时,要对源格式和目标格式进行初始化.源格式赋值为具体的内容,目标格式赋值为空. ...

  2. Java中String和char、int相互转换

    String转char 方法一:toStringArray String调用toCharArray(),将String字符串转换成char[],然后可以通过下标访问任意字符. String s = & ...

  3. Java中String与char数组相互转换

    java中对string的操作很多时候不如对char[]操作的方便,所以介绍一些String字符串和char[]互换的方法: String直接转char[] 使用String.toCharArray( ...

  4. [小技巧][JAVA][转换]整型int与字符char相互转换

    借助String.valueOf()过渡 char -> String ->int char c; String str = String.valueOf(c); int i = Inte ...

  5. C++ 字符串、string、char *、char[]、const char*的转换和区别

    1.字符串 字符串本质就是一串字符,在C++中大家想到字符串往往第一反应是std::string(后面简称string) 字符串得从C语言说起,string其实是个类,C语言是没有class的,所以C ...

  6. 转一篇很牛的文章,说明string、char和char*、char**等的使用

    大气象学习园地 博客园 新闻 新随笔 管理 订阅 随笔- 664  文章- 1  评论- 2646  C++二级指针char **的用法 char **p和char *p[]基本一样, 区别讲不出来, ...

  7. c++中int与char相互转换

    一.ASCII 表 了解 int 与 char 相互转换之前,先让我们看一下 ASCII 码表. 其中数字字符对应的位置为:48 - 57. 二.char 转 int char 转 int 之前,先将 ...

  8. MFC中的CString.Format及CString,string,char*之间的转换

    1.CString.Format的使用:https://blog.csdn.net/wangkaishou/article/details/5846152 2.CString,string,char* ...

  9. C++中const char*, string 与char*的转化

    C++中const char*, string 与char*的转化 原文:https://blog.csdn.net/zhang_alongzd/article/details/52790905 版权 ...

  10. String与InputStream相互转换

    1.String to InputStream String str = "String与InputStream相互转换"; InputStream in_nocode = new ...

最新文章

  1. 指定域的名称或安全标识(SID)与该域的信任信息不一致.
  2. PHP中空格占位数吗,HTML空格占位
  3. Kafka如果丢了消息,怎么处理的?
  4. mysql数据库入门教程(5):多表操作(连接查询,子查询,分页查询,联合查询)
  5. JAVA第一个GUI程序---计算器
  6. 张朝阳:“搜狐时尚盛典”是搜狐布局内容生态的一部分
  7. java的equals什么作用_java当中equals函数的作用小结
  8. 项目初期不同职位的人如何沟通?以及沟通的效率
  9. java开发spc分析软件,SPC、五大工具带你深入实战......OMG,收藏!
  10. 点云数据文件常用格式及PCL中点云数据类型
  11. Beyond Compare 30天评估期结束解决办法
  12. 低代码平台上的出入库管理
  13. java用户登录进入系统_Java CRM系统用户登录功能实现代码实例
  14. 看我如何自制安全的远程控制工具
  15. html桂花酿网页,桂花酒的做法
  16. 神经网络 语音识别,神经网络语音合成
  17. indirect引用单元格/单元格区域/跨表引用(适用于引用不同工作表的相同单元格或者区域)
  18. SQL Server 和 Oracle 以及 MySQL 的区别
  19. 迪士尼照片_迪士尼经典游戏,《狂热》和更多Linux游戏新闻
  20. 网站美工全能实战全解析-彭亮-专题视频课程

热门文章

  1. 明日之后维护服务器什么情况,明日之后无法连接服务器是什么原因
  2. Java面试题大全(part_4)
  3. Java RESTful风格编程 和 RESTful架构详解
  4. 微信小程序之收藏的实现2020-05-16
  5. 你真的懂Java怎么输出Hello World吗?
  6. Unity3D启动报错的解决方案
  7. java基于ssm的在线装机DIY系统的分析与设计
  8. 分布式基站中的BBU和RRU
  9. Ubuntu 桌面美化教程
  10. 【读后感1】读《我是一只it小小鸟》有感