编写一个类似库函数strcat()的函数,实现两个字符串的连接,并在main()函数中验证该自定义函数的功能。C语言
时间: 2024-02-23 08:01:23 浏览: 74
可以编写如下的代码来实现该自定义函数:
```c
#include <stdio.h>
#include <string.h>
void my_strcat(char *destination, const char *source) {
// 找到destination末尾的位置
while (*destination != '\0') {
destination++;
}
// 将source的内容复制到destination末尾
while (*source != '\0') {
*destination = *source;
destination++;
source++;
}
// 在destination末尾添加空字符
*destination = '\0';
}
int main() {
char str1[50] = "Hello";
char str2[] = "World!";
printf("Before concatenation: str1=%s, str2=%s\n", str1, str2);
my_strcat(str1, str2);
printf("After concatenation: str1=%s, str2=%s\n", str1, str2);
return 0;
}
```
该代码中的 `my_strcat()` 函数实现了两个字符串的连接,其思路与标准库函数 `strcat()` 相似。我们首先找到 `destination` 字符串末尾的位置,然后将 `source` 字符串的内容复制到 `destination` 字符串末尾,最后在 `destination` 字符串末尾添加一个空字符。
在 `main()` 函数中,我们首先定义两个字符串 `str1` 和 `str2`,然后调用 `my_strcat()` 函数将它们连接起来,最后输出结果。可以看到,输出的结果与我们预期的一致,说明自定义函数的功能正确。
阅读全文