请分别用字符数组和字符指针做函数参数,用两种方法编程实现字符串连接函数strcat()的功能使用c语言
时间: 2024-02-23 16:57:45 浏览: 65
c++ 连接两个字符串实现代码 实现类似strcat功能
5星 · 资源好评率100%
使用字符数组实现:
```c
#include <stdio.h>
#include <string.h>
char* myStrcat(char str1[], char str2[]) {
int len1 = strlen(str1);
int len2 = strlen(str2);
for (int i = 0; i < len2; i++) {
str1[len1 + i] = str2[i];
}
str1[len1 + len2] = '\0';
return str1;
}
int main() {
char str1[100] = "Hello";
char str2[] = "world!";
myStrcat(str1, str2);
printf("连接后的字符串:%s\n", str1);
return 0;
}
```
使用字符指针实现:
```c
#include <stdio.h>
#include <string.h>
char* myStrcat(char *str1, char *str2) {
char *p = str1;
while (*p) {
p++;
}
while (*str2) {
*p = *str2;
p++;
str2++;
}
*p = '\0';
return str1;
}
int main() {
char str1[100] = "Hello";
char str2[] = "world!";
myStrcat(str1, str2);
printf("连接后的字符串:%s\n", str1);
return 0;
}
```
两种方法的区别在于:使用字符数组实现需要计算字符串长度,并且需要遍历字符串进行连接;而使用字符指针实现则可以通过指针直接操作字符串,只需要遍历一次。
阅读全文