c++实现字符串的复制,运用指针
时间: 2024-09-22 10:06:24 浏览: 37
在C++中,可以使用指针来高效地复制字符串。一种常见的方式是通过字符数组(即C风格的字符串),利用指针来操作数组。以下是基本步骤:
1. 定义源字符串的地址(指针)并获取其长度(包括终止符'\0');
2. 创建一个新的字符数组,大小等于源字符串长度加1(用于存放新的终止符);
3. 指向新数组的指针指向新字符串的开始位置;
4. 使用循环逐个复制源字符串中的字符到新数组,直到遇到'\0'。
下面是一个简单的示例代码:
```cpp
#include <cstring>
void copyString(const char* src, char* dest) {
// 获取源字符串长度
size_t len = strlen(src);
// 确保有空间存放终止符
if (len != 0 && src[len - 1] != '\0') {
len++; // 包含最后一个字符(终止符)
}
// 将源字符串复制到dest
std::copy(src, src + len, dest);
// 设置新字符串的终止符
dest[len - 1] = '\0';
}
// 示例用法
int main() {
char source[] = "Hello, C++!";
char destination[50]; // 假设足够大的内存
copyString(source, destination);
std::cout << "Copied string: " << destination << std::endl;
return 0;
}
```
阅读全文