C++的string与char* char[]相互转换
这俩天忙着调试一块AD芯片,突然想起今天是程序员日,嗯,也不知道写点什么,那就随笔写点这段时间看的C++吧C++与C语言中最常见的就是字符串了,因此,关于它们自己的转换什么就尤为最重要了首先C++中的string可以被看成是以字符为元素的一种容器一、string 转const char*string有2个函数:一个是.c_str(),一个是data成员函数。其中c_str()确保返回的字符串以‘\
这俩天忙着调试一块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对象
更多推荐
所有评论(0)