C++有一个字符串,包含n个字符。写一函数,将此字符串中从第m个字符开始的全部字符复制成为另一个字符串,用指针处理。
时间: 2023-12-10 22:41:07 浏览: 31
下面是一个示例代码:
```c++
#include <iostream>
#include <cstring>
using namespace std;
void copyString(char *src, char *dest, int m) {
int len = strlen(src);
if (m <= len) {
src += m - 1; // 将指针移动到第m个字符的位置
while (*src != '\0') {
*dest++ = *src++;
}
*dest = '\0'; // 添加字符串结束符
}
}
int main() {
char str1[] = "Hello, world!";
char str2[100];
int m = 7;
copyString(str1, str2, m);
cout << str2 << endl; // 输出: world!
return 0;
}
```
我们定义了一个 `copyString` 函数,该函数接受三个参数:源字符串指针 `src`、目标字符串指针 `dest` 和起始位置 `m`。该函数首先计算源字符串的长度 `len`,然后将源字符串指针移动到第 `m` 个字符的位置。接下来,我们使用 `while` 循环将所有字符复制到目标字符串中,直到遇到字符串结束符 `\0`。最后,我们在目标字符串的末尾添加字符串结束符。在 `main` 函数中,我们定义了一个源字符串 `str1`、一个目标字符串 `str2`,并将起始位置设为 `7`。我们调用 `copyString` 函数将源字符串中从第 `7` 个字符开始的所有字符复制到目标字符串中,并输出结果。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)