字符数组(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)

posted @ 2018-08-10 10:54  久龄  阅读(2301)  评论(0编辑  收藏  举报