函数原型
char *strcpy(char *dest, const char *src);
实现代码
char * strcpy(char *to, const char *from)
{
char *save = to;
for (; (*to = *from) != '\0'; ++from, ++to);
return(save);
}
说明
strcpy
是依据 \0
作为结束判断的,如果 to
的空间不够,则会引起 buffer overflow
,可能导致程序崩溃。- 但通常,我们的 from 都来源于用户的输入,很可能是非常大的一个字符串,因此 strcpy 不够安全。