首页 > 编程语言 > 详细

【C语言】实现strcat

时间:2015-11-10 14:16:15      阅读:249      评论:0      收藏:0      [点我收藏+]
Strcat函数原型如下:

char *strcat(char *strDest, const char *strScr) //将源字符串加const,表明其为输入参数
{
       char * address = strDest;             //该语句若放在assert之后,编译出错
       assert((strDest != NULL) && (strScr != NULL)); //对源地址和目的地址加非0断言
       while(*strDest)             //是while(*strDest!=’/0’)的简化形式
       {                        //若使用while(*strDest++),则会出错,因为++是不受循环
              strDest++;               //约束的。所以要在循环体内++;因为要是*strDest最后指
       }                        //向该字符串的结束标志’/0’。
       while(*strDest++ = *strScr++) //是while((*strDest++ = *strScr++)!=’/0’)的简化形式
       {
              NULL;                 //该循环条件内可以用++,
       }                          //此处可以加语句*strDest=’/0’;有无必要?
return address;               //为了实现链式操作,将目的地址返回
}


以下是在VC6.0中调试的例子,函数名用my_strcat代替

#include <stdio.h>
#include <assert.h>
char *my_strcata(char *strDest,const char *strScr)
{
       char * address = strDest;
       assert((strDest != NULL) && (strScr != NULL));
       while(*strDest)
       {
              strDest++;
       }
       while(*strDest++ = *strScr++)
       {
              NULL;
       }
       return address;
}
 
void main()
{
       char str1[100]={"i love"};
       char str2[50]={"China"};
       printf("%s/n",my_strcata(str1,str2));
}


本文出自 “Vs吕小布” 博客,谢绝转载!

【C语言】实现strcat

原文:http://survive.blog.51cto.com/10728490/1711347

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!