C++ 字符串 copy()函数
此函数将一个字符串的内容复制到另一个字符串中。
语法
假设str1和str2是两个字符串对象,len是子串的长度。我们想要将字符串str1复制到字符串对象str2中,语法如下所示:
str1.copy(str2,len);
str1.copy(str2,len,pos);
参数
str2: str2是目标字符串对象,用以保留复制的字符串。
len: 定义了子字符串的长度。
pos: 确定要包含的第一个字符的位置。
返回值
返回所要复制的字符数。
示例1
让我们看一个简单的示例,将字符串复制到另一个字符串对象中。
#include<iostream>
using namespace std;
int main()
{
string source = "javatpoint tutorial";
char destination[20];
cout<<"source string is : "<<source<<'\n';
source.copy(destination,sizeof source);
cout<<"destination string is :"<<destination;
return 0;
}
输出:
source string is: javatpoint tutorial
destination string is: javatpoint tutorial
在这个示例中,源字符串包含值 “javatpoint 教程” 我们使用copy函数将源字符串复制到目标字符串。
示例2
当位置在参数中传递时,让我们看一个简单的复制字符串的示例。
#include<iostream>
using namespace std;
int main()
{
string str = "java programs";
char str1[13] ;
str.copy(str1,8,5);
str1[8] ='\0';
cout<<"String contains : " <<str1;
return 0;
}
输出:
String contains: programs
在这个示例中,我们使用copy函数将字符串str的子串即programs复制到字符串str1中。
示例3
让我们看一个简单的示例,将整数数组复制到向量中。
#include<iostream>
#include<vector>
using namespace std;
int main()
{
int a[5]={1,2,3,4,5};
vector<int> v1(5);
copy(a,a+5,v1.begin());
for(int i=0;i<v1.size();i++)
{
cout<<v1[i];
}
return 0;
}
输出:
12345
在这个示例中,我们使用copy函数将整数数组复制到向量中。