1字符串连接函数char* strcat(char* strDest,const char* strScr)
其思想是先将strDest指向偏移到末地址,然后将strScr的首地址值等于strDest的末地址值
char* strcat(char* strDest,const char* strScr)
{
char* address=strDest;
assert(strDest!=null&&strScr!=null);
while(*strDest)//*strDest!='\0'
{ strDest++;
}
while(strDest++=strScr++)
{
}
return address;//为了实现链式的操作
}
在第一次看到这函数原型的时候我就在想为什么不把assert(strDest!=null&&strScr!=null);这句改为
if(strDest=!null||strScr!=null)
if(strDest==null)
return strScr;
else
return strDest;
else
return null;
后来才知道自己很傻,这样的话就失去了连接的意义了!
2 字符串复制函数
char* strcpy(char* strDest,const char* strScr)
{
char* address=strDest;
assert(strScr!=null&&strDest!=null)
while(*strScr)
{
*strDest++=*strScr++;
}
*strDest='\0';
return address;
}
3 字符串比较函数
int strcmp(const *char str1,const char* str2)
{
assert(str1!='\0'&&str2!='\0');
while(*str1&&*str2&&*str1++==*str2++)
{
}
return *str1-*str2;
}
4 字符串长度函数
int strlen(const char* str)
{
int iLen=0;
assert(str!=null);
while(*str++)
{
iLen++;
}
return iLen;
}