C/C++ codevoid strcpy( char *strDest, char *strSrc ) //字符串的指针
{
while( (*strDest++ = * strSrc++) != ‘\0’ ); //将后者第1个字符赋给前者首地址,然后各自
} //自增,将后一个字符赋给前者 直到后者出现
//0(字符串结尾),字符是'\0'
第二种:
void strcpy( char *strDest, const char *strSrc ) //算法相同,加了const表示是常量,可以防
{ //止在函数中修改后者的内容
while( (*strDest++ = * strSrc++) != ‘\0’ );
}
第三种:
void strcpy(char *strDest, const char *strSrc)
{
assert( (strDest != NULL) && (strSrc != NULL) ); //判断一下,为空就不需要赋值
while( (*strDest++ = * strSrc++) != ‘\0’ );
}
第四种:
char * strcpy( char *strDest, const char *strSrc )
{
assert( (strDest != NULL) && (strSrc != NULL) );
char *address = strDest; // 这个作用不清楚,不过我写函数也习惯在函数里重新定义一个指针接
while( (*strDest++ = * strSrc++) != ‘\0’ ); //受参数
return address;
}