C语言中的strcpy原理及其实现方法,这里提供三种思路。

下面给出几种实现方法

最基本思路,数组版本

1
2
3
4
5
6
void strcpy(char *s, char *t) {
int i;
i = 0;
while ((s[i] = t[i]) != '\0')
i++;
}

指针版本1

1
2
3
4
5
6
void strcpy(char *s, char *t) {
while ((*s = *t) != '\0') {
s++;
t++;
}
}

指针版本2

1
2
3
4
void strcpy(char *s, char *t) {
while ((*s++ = *t++) != '\0')
;
}

指针版本3

1
2
3
4
void strcpy(char *s, char *t) {
while (*s++ = *t++)
;
}

转载请包括本文地址:https://allenwind.github.io/blog/1963
更多文章请参考:https://allenwind.github.io/blog/archives/