原型
extern char *strcat(char *dest,char *src);
用法
#include <string.h>
在C++中,则存在于<cstring>头文件中。
功能
把src所指字符串添加到dest结尾处(覆盖dest结尾处的'\0')。
说明
src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。
返回指向dest的指针。
程序代码:
#include<stdio.h>
#include<assert.h>
char *my_strcat(char *dst, const char *src)
{
assert(dst);
assert(src);
char *cp = dst;
while (*cp)
{
cp++;
}
while (*cp++ = *src++);
return dst;
}
int main()
{
char p[] = "abcd" ;
char q[] = "efg" ;
char *ret = my_strcat(p, q);
printf( "%s\n", ret);
system( "pause");
return 0;
}
1、const修饰
源字符串参数用const修饰,防止修改源字符串。
2、空指针检查
(A)不检查指针的有效性,说明你不注重代码的健壮性。
(B)检查指针的有效性时使用assert(dst && src)。
希望能帮助大家,谢谢!