C++将char数组的一部分复制到另一个char数组

Jam*_*iaz 1 c++

我试图只将一部分字符串(或char*)复制到另一个字符串(或另一个字符*)

char * first_string = "Every morning I"
char * second_string = "go to the library, eat breakfast, swim."
char * final_string;
Run Code Online (Sandbox Code Playgroud)

我想将second_string的一部分复制到first_string中.

例如:

每天早上我都吃早餐.

允许您从字符串中的特定点开始仅复制字符串的一部分的功能是什么?

注意:如果可能的话,我不想使用字符串变量,而是使用char*,甚至是char数组.

Luc*_*ore 7

它是std::copy,但是对于你的代码,它会导致未定义的行为,因为你有指向字符串文字的指针,这是非法的修改.

你需要类似的东西

char first_string[256] = "Every morning I";
char second_string[256] = "go to the library, eat breakfast, swim.";

std::copy(
    &second_string[23],
    &second_string[36],
    &first_string[strlen(first_string)]
);
Run Code Online (Sandbox Code Playgroud)

指数可能会被取消.