如何在 C++ 中复制 std::string 类型的字符串?
我使用了 strcpy()
函数,它仅在我使用 C 字符串数组时才有效,例如:
I used the strcpy()
function and it only works if I use C-string arrays like:
char a[6] = "text";
char b[6] = "image";
strcpy(a,b);
但每当我使用时
string a = "text";
string b = "image";
strcpy(a,b);
我收到此错误:
functions.cpp: 没有匹配的函数调用 strcpy(std::string&, std::string&)
functions.cpp: no matching function for call to
strcpy(std::string&, std::string&)
如何在C++中复制2个字符串数据类型的字符串?
How to copy 2 strings of string data type in C++?
推荐答案
你不应该使用 strcpy()
来复制 std::string
,只能使用它对于 C 样式字符串.
You shouldn't use strcpy()
to copy a std::string
, only use it for C-Style strings.
如果您想将 a
复制到 b
则只需使用 =
运算符.
If you want to copy a
to b
then just use the =
operator.
string a = "text";
string b = "image";
b = a;
相关文章