您的位置:首页 > 编程语言 > C语言/C++

[置顶] 【C语言】 实现strncat

2016-05-26 12:24 411 查看
#include <stdio.h>
#include <assert.h>

char *my_strncat(char *strDest,const char *strSrc,int i)
{
char *start = strDest;  //为了将这个函数的返回值作为其他函数的参数,即链式访问
assert((strDest != NULL) && (strSrc != NULL));
while(*strDest++)
;    //直到遇到\0跳出while循环
strDest--;  //由于while循环条件中最后一次判断指向\0后不满足还向后加了一次,所以需要减回来
while(i--)  
if(!(*strDest++ = *strSrc++))//当if中为真时,执行下面的语句
return (start);
*strDest = '\0';
return(start);
}

void main()
{
       char strDest[20]={"i love"};
       char strSrc[10]={" China"};
   int i = 4;
       printf("%s\n",my_strncat(strDest,strSrc,i));
}


本文出自 “Vs吕小布” 博客,谢绝转载!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: