c++代码
char* strcpy(char* dest,const char* src)
{
assert(src != NULL && dest != NULL);//[1]
char* destRet = dest;//[2]
while((*destRet++ = *src++) != '\0');//[3]
return destRet;
}
注意事项
[1]要进行指针有效性判断
[2]要保存原始的dest值
[3]要注意循环条件的边界处理
其他考查点
为什么要返回char*
是为了让strcpy支持链式表达式,例如:
int iLength=strlen(strcpy(strA,strB));

本文详细介绍了C++中strcpy函数的实现原理,强调了指针有效性判断、原始dest值的保存及循环条件边界处理的重要性,并解释了为何返回char*类型。
868

被折叠的 条评论
为什么被折叠?



