C语言--实现strcat函数

时间:2021-01-05 01:59:27

首先明确strcat是字符拼接函数,所以在实现时依然先判断字符串是否为空(用assert)。设置两个字符串dst和src,strcat要将src拼接至dst后面,所以dst的空间要足够容纳src。又因为src被拷贝是不允许被改变,所以用const锁起来。拼接思想为先设置一个字符串为ret,让ret先等于dst,之后dst++移到dst的'/0'的位置将src再拷贝至ret(dst)后面即实现字符串拷贝。代码如下:

char *my_strcat(char *dst, const char *src)
{
 char *ret = *dst;
 assert(dst != NULL);
 assert(src != NULL);
 while (*dst)
 {
  dst++;
 }
 while (*dst++ = *src++)
 {
  ;
 }
 return ret;
}