不使用strcpy函数,实现两个字符串的复制
时间: 2024-05-11 22:16:32 浏览: 87
C语言程序设计-用函数实现字符串的复制, 不允许用strcpy()函数.c
5星 · 资源好评率100%
可以使用循环遍历来实现两个字符串的复制。具体步骤如下:
1. 遍历源字符串,获取源字符串长度 len;
2. 动态申请大小为 len+1 的字符数组作为目标字符串;
3. 遍历源字符串并依次赋值给目标字符串;
4. 在目标字符串最后添加一个 '\0' 字符,表示字符串结束。
示例代码如下:
```
#include <stdio.h>
#include <stdlib.h>
void string_copy(char *dst, char *src) {
int len = 0;
while (src[len] != '\0') {
len++;
}
for (int i = 0; i < len; i++) {
dst[i] = src[i];
}
dst[len] = '\0';
}
int main() {
char *src = "hello, world!";
char *dst = (char*) malloc(sizeof(char) * (strlen(src) + 1));
string_copy(dst, src);
printf("%s\n", dst);
free(dst);
return 0;
}
```
阅读全文