本关任务:实现一个自己的字符串连接函数mystrcat。 题目中已经给出main函数,main函数会调用mystrcat函数进行测试,会输入两个字符串A和Bmystrcat返回连接后的字符串,并且在A和B之间加上一个字符“-”。
时间: 2024-02-22 19:56:03 浏览: 72
好的,那么让我们来实现一个自己的字符串连接函数mystrcat吧。在C语言中,字符串是以null字符('\0')结尾的字符数组,我们需要在操作字符串时考虑到这个null字符。
函数原型如下:
```c
char *mystrcat(char *dest, const char *src);
```
其中,`dest`表示被连接的字符串,`src`表示要连接的字符串。函数返回值为连接后的字符串。
具体实现如下:
```c
#include <stdio.h>
#include <string.h>
char *mystrcat(char *dest, const char *src) {
char *p = dest + strlen(dest);
*p++ = '-';
while(*src != '\0') {
*p++ = *src++;
}
*p++ = '\0';
return dest;
}
int main() {
char a[100], b[100];
scanf("%s %s", a, b);
printf("%s\n", mystrcat(a, b));
return 0;
}
```
我们首先使用`strlen`函数获取目标字符串`dest`的长度,并将指针`p`指向`dest`字符串的末尾。然后在`dest`和`src`之间加上连接符`'-'`,并将指针`p`移动到下一个位置。接着,我们通过while循环遍历`src`字符串,将其中的字符逐一复制到`dest`字符串中,最后在`dest`字符串的末尾加上`'\0'`字符,表示字符串的结束。最后,我们将`dest`字符串返回即可。
阅读全文