字符数组(char)和字符串(string)的转换
#include<iostream>
#include<string>
using namespace std;
void main()
{
string LyuS = “Welcome to learn C++”;
const char *LyuC = LyuS.data(); //字符串转换为字符数组
cout << “LyuC :”<< LyuC << endl;
for(int i = 0 ; i < LyuS.length() ; i ++)
cout << “LyuC[” << i << “] :” << LyuC[i] << endl;
char LyuC_2[10];
LyuC_2[0] = \’a\’; //给字符数组进行赋值
for (int j = 1; j < 9; j++)
{
LyuC_2[j] = LyuC_2[j – 1] +1;
}
LyuC_2[9] = \’\0\’;
string LyuS_2 = LyuC_2; //字符数组转化成字符串
cout << “LyuS_2 :” << LyuS_2;
getchar();
}
解释:
const char *LyuC = LyuS.data();
这句话就是字符串转字符数组,我在不少资料里面发现他们把字符数组和字符指针分开了,其实在C++里面数组在某种意义上就是连续不断的指针,当然只限于在用法上,所以对于初学者如果不是要求完成度特别高,可以这么用,
string LyuS_2 = LyuC_2;
字符数组转成字符串就很是容易了,直接赋值即可。
(详细解释请看https://blog.csdn.net/yu1543376365/article/details/79176606)