有字符串str1, str2。编写函数 str _ copy(char *str1, char *str2), , 实现把串str1的内容复制到str2中。在main函数中调用该函数, 实现字符串的复制功能
时间: 2025-01-05 16:43:14 浏览: 6
以下是一个实现字符串复制的C语言函数,以及在main函数中调用该函数的方法:
```c
#include <stdio.h>
#include <string.h>
// 定义字符串复制函数
void str_copy(char *str1, char *str2) {
while (*str1 != '\0') { // 遍历str1直到遇到字符串结束符
*str2 = *str1; // 将str1的当前字符赋值给str2
str1++; // 移动到str1的下一个字符
str2++; // 移动到str2的下一个位置
}
*str2 = '\0'; // 在str2的末尾添加字符串结束符
}
int main() {
char str1[100];
char str2[100];
printf("请输入要复制的字符串: ");
scanf("%s", str1);
str_copy(str1, str2); // 调用字符串复制函数
printf("复制后的字符串: %s\n", str2);
return 0;
}
```
这个程序的工作原理如下:
1. 定义了一个名为 `str_copy` 的函数,它接受两个字符指针参数:`str1`(源字符串)和 `str2`(目标字符串)。
2. 在 `str_copy` 函数中,我们使用 while 循环遍历 `str1`。循环会在遇到字符串结束符 `'\0'` 时停止。
3. 在每次循环中,我们将 `str1` 当前指向的字符赋值给 `str2` 当前指向的位置,然后同时移动两个指针。
4. 循环结束后,我们在 `str2` 的末尾添加字符串结束符 `'\0'`。
5. 在 `main` 函数中,我们声明了两个字符数组 `str1` 和 `str2`,用于存储输入的字符串和复制的字符串。
6. 使用 `scanf` 函数获取用户输入的字符串。
7. 调用 `str_copy` 函数,将 `str1` 的内容复制到 `str2`。
8. 最后,打印复制后的字符串 `str2`。
这个程序可以有效地将一个字符串复制到另一个字符串中。在实际应用中,你也可以使用 C 标准库中的 `strcpy` 函数来完成字符串复制操作。
阅读全文