这俩天忙着调试一块AD芯片,突然想起今天是程序员日,嗯,也不知道写点什么,那就随笔写点这段时间看的C++吧
C++与C语言中最常见的就是字符串了,因此,关于它们自己的转换什么就尤为最重要了
首先C++中的string可以被看成是以字符为元素的一种容器
一、string 转 const char*
string有2个函数:一个是.c_str(),一个是data成员函数。其中c_str()确保返回的字符串以‘\0‘结尾,而data不能确保
二、string转char*
可以用string的一个成员函数copy实现
string s1 = "sasas";
char *data;
int len = s1.length();
data = (char *)malloc((len+1)*sizeof(char));
s1.copy(data,len,0);
三、string转换成char[]
C++中的string可以按脚标访问,所以可以类似与字符数组一样操作,那么string转char[]就可以按下面的方法
string p = "hello";
char a[8];
int i;
for( i=0;i<p.length();i++)
a[i] = p[i];
a[i] = '\0';//注意,一定要手动加上 '\0'
四、char* char[]转string
这种最直接,可以之间赋值给string对象
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)