通过c ++中的字符串指针复制字符串变量中的字符串

时间:2018-05-27 14:27:44

标签: c++ string

我试图通过字符串指针“seq”将字符串复制到字符串变量“cpy”中,我的存根代码 -

#include <iostream>
#include<string.h>

using namespace std;
int main(){
string *seq[5],str[5],cpy;

for(int i=4;i>=0;i--)
{
cin>>str[i];
seq[i]=&str[i];
}

for(int i=0;i<5;i++)
{
//copy *seq[i] to cpy so that cout gives string str[i]; 
cout<<cpy<<endl; // print all strings according to new order
}
}

我该如何完成这项任务?

2 个答案:

答案 0 :(得分:0)

您可以使用+运算符来连接字符串:

for(int i=0;i<5;i++)
{
    cpy += *seq[i];
}
cout<<cpy<<endl; // print all strings according to new order

但是,我在您的代码中没有看到您初始化seq,这似乎是一个指针 - 对于您的示例,我建议只省略*

答案 1 :(得分:0)

我使用了库字符串:

#include<string>

然后你可以做你需要的事情:

#include <iostream>
#include<string>

using namespace std;
int main(){
 string *seq[5],str[5],cpy="";//you must assign empty string for cpy

 for(int i=4;i>=0;i--)
 {
  cin>>str[i];
  seq[i]=&str[i];
 }

 for(int i=0;i<5;i++)
 {
  cpy += *seq[i];
  cout<<cpy<<endl; // print all strings according to new order
 }
 return 0;
}