用c++的指针编程:使用字符型指针复制字符串。要代码和结果
时间: 2024-05-09 21:16:46 浏览: 121
字符串的复制 c++
4星 · 用户满意度95%
下面是一个使用字符型指针复制字符串的 C++ 代码示例:
```cpp
#include <iostream>
#include <cstring>
using namespace std;
int main()
{
char str1[] = "Hello, world!"; // 原始字符串
char *str2; // 指向新字符串的指针
// 复制字符串
str2 = new char[strlen(str1) + 1];
strcpy(str2, str1);
// 输出结果
cout << "原始字符串为:" << str1 << endl;
cout << "新字符串为:" << str2 << endl;
delete[] str2; // 释放内存
return 0;
}
```
代码输出结果如下:
```
原始字符串为:Hello, world!
新字符串为:Hello, world!
```
在这个示例中,我们首先定义了一个字符数组 `str1`,其中包含原始字符串。然后,我们声明了一个字符型指针 `str2`,该指针将用于指向新字符串。接下来,我们使用 `new` 运算符为 `str2` 动态分配了足够的内存,以容纳 `str1` 中的字符串。然后,我们使用 `strcpy` 函数将 `str1` 中的字符串复制到 `str2` 中。最后,我们输出了原始字符串和复制后的字符串,并使用 `delete[]` 运算符释放了 `str2` 所指向的内存。
需要注意的是,在动态分配内存时,我们必须记得释放这些内存以避免内存泄漏。在本示例中,我们使用了 `delete[]` 运算符来释放 `str2` 所指向的内存。
阅读全文