c++自定义函数实现字符串连接
时间: 2023-08-27 15:07:06 浏览: 69
我们可以用字符数组或指针来实现字符串连接,下面是一个示例代码:
```c++
#include <iostream>
#include <cstring>
using namespace std;
char* strConcat(char* str1, char* str2) {
int len1 = strlen(str1);
int len2 = strlen(str2);
char* result = new char[len1 + len2 + 1];
int i = 0, j = 0;
while (str1[i] != '\0') {
result[i] = str1[i];
i++;
}
while (str2[j] != '\0') {
result[i+j] = str2[j];
j++;
}
result[i+j] = '\0';
return result;
}
int main() {
char str1[] = "Hello";
char str2[] = "World";
char* result = strConcat(str1, str2);
cout << result << endl;
delete[] result;
return 0;
}
```
在这个示例代码中,我们定义了一个 `strConcat` 函数,它接收两个字符数组作为参数,返回一个拼接后的新的字符数组。
首先,我们使用 `strlen` 函数计算出两个输入字符串的长度,然后根据它们的总长度分配一个新的字符数组。注意,我们需要额外的一个字符来存储拼接后的字符串的结尾符 `\0`。
接下来,我们使用两个循环来将输入字符串中的字符复制到新的字符数组中。最后,我们在新字符串的结尾处添加上 `\0` 结尾符,并将其返回。
在主函数中,我们调用 `strConcat` 函数来拼接两个字符串,并打印出结果。最后,我们使用 `delete[]` 释放动态分配的内存。