char数组如何转string

char数组转string的方法:可以通过直接赋值的方法来实现,如【char a[]=" abc d\0efg ";string s=a;】。如果要实现string转char数组,可以调用strcpy函数和data函数。

char数组如何转string

一、char数组转string:

1、可以直接赋值

(推荐教程:c语言教程)

2、代码:

#include<iostream>
using namespace std;
 
int main()
{
	char a[]=" abc  d\0efg "; 	
	
	string s=a;  //直接赋值
	
	cout<<s;	
	return 0;
	
}

结果:

0f508a726d7d13b26539a174922c23d.png

二、string转char数组:

1、调用strcpy函数,和字符串的data函数: (char数组可以更改)(string转char数组)

(1)strcpy不能赋值给char指针 ,只能赋值给char数组;

(2)char数组长度,必须大于等于string长度。

代码:

#include<iostream>
#include<cstring>
using namespace std;
 
int main()
{	
	string s="123456"; 
	char c[s.length()]; 
	
	/*
	**调用strcpy函数,和字符串的data函数 
	**1、strcpy不能赋值给char指针 ,只能赋值给char数组 
	**2、char数组长度,必须大于等于string长度 
	*/ 
	strcpy(c,s.data()); 	
	
	c[0]='6';
	
	cout<<c<<endl;
	cout<<strlen(c);
	
	return 0;
	
}

结果:

083c56da59f136e5f5b1e17e39b23bf.png

以上就是char数组如何转string的详细内容,更多请关注其它相关文章!