c++,字符串复制代码
时间: 2024-09-26 09:05:25 浏览: 73
在C++中,有多种方式可以复制字符串,以下是常见的几种:
1. **使用 `std::strcpy` 函数**:
```cpp
#include <cstring>
std::string original = "Hello, World!";
char temp[strlen(original) + 1]; // 预留空字符
std::strcpy(temp, original.c_str());
std::string copiedString(temp);
```
2. **使用 `std::string` 的构造函数**:
```cpp
std::string original = "Hello, World!";
std::string copiedString(original); // 直接赋值,会创建新的字符串副本
```
3. **使用 `std::copy` 和 `std::back_inserter`**:
```cpp
std::string original = "Hello, World!";
std::string copiedString;
std::copy(original.begin(), original.end(), std::back_inserter(copiedString));
```
4. **如果原字符串是 C 风格字串(`const char*`),可以使用 `std::string` 构造函数接收**:
```cpp
const char* original = "Hello, World!";
std::string copiedString(original);
```
请注意,所有这些方法都会创建一个新的字符串对象作为副本,并消耗额外的内存。
阅读全文