您的位置:首页 > 其它

strcpy函数用法详细解释和其相关问题

2011-06-16 20:12 766 查看
 char *strcpy(char *dest,char *src);
功能:把src所指由NULL结束的字符串复制到dest所指的数组中。
说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。
src字符串尾的字符串结束标识符'/0'也会被复制过去,复制完成后s1中的内容会被覆盖掉

 

strlen函数的意思是测试字符串的字符长度,不含字符串结束标志的。
sizeof是个运算符,它的结果是字符串在内存中的所占字节大小,它要把/0算进去的。

strcpy函数原型1
char * strcpy(char *a, const char *b)    //注意要声明const
{

assert((strDest!=NULL) && (strSrc !=NULL)); //断言两个为空则不用复制,直接中止

while((*(a++)=*(b++))!=0);

return a;

}

strcpy函数原型2
char *strcpy(char *strDest, const char *strSrc);//strDest为目标,strSrc为源
{
assert((strDest!=NULL) && (strSrc !=NULL)); //如果两个为空则不用复制,直接中止
char *address = strDest;      //用address指向strDest开始地址
while( (*strDest++ = * strSrc++) != ‘/0’ ) //复制,直到源串结束;
return address ;   //返回strDest开始地址
}
完美的strlen版本:

int strlen(const char *str)
{
assert(str != NULL); //判断字符串非NULL
int len;
while((*str++)!= '/0')
{
len++;
}
return len;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  null 测试