c++编写函数实现字符串连接功能。不允许使用系统定义的字符串操作函数
时间: 2023-12-03 09:45:08 浏览: 120
可以使用以下代码实现字符串连接功能:
```cpp
#include <iostream>
using namespace std;
char* string_concatenate(char* str1, char* str2) {
int len1 = strlen(str1);
int len2 = strlen(str2);
char* result = new char[len1 + len2 + 1];
int i, j;
for (i = 0; i < len1; i++) {
result[i] = str1[i];
}
for (j = 0; j < len2; j++) {
result[i + j] = str2[j];
}
result[i + j] = '\0';
return result;
}
int main() {
char str1[] = "Hello, ";
char str2[] = "world!";
char* result = string_concatenate(str1, str2);
cout << result << endl;
delete[] result;
return 0;
}
```
该函数接收两个参数,分别为待连接的两个字符串,返回连接后的字符串。首先,计算两个字符串的长度。然后,创建一个新的字符数组,大小为两个字符串长度之和再加一(多出的一个字节是为了存放字符串结束符"\0")。接着,将第一个字符串的字符拷贝到新数组中,再将第二个字符串的字符拷贝到新数组中。最后,在新数组的末尾添加字符串结束符"\0"。最后,返回新数组的首地址。
在main函数中,我们定义两个待连接的字符串,并调用string_concatenate函数进行连接。最后,打印连接后的字符串并释放内存。
阅读全文