/*
  字符串函数练习 
  手动写:strlen
    strcpy
    strcat 

*/


#include <stdio.h>
int mystrlen(const char * p_str )      //计算字符串中有郊字符的个数

 int num = 0;
 while (p_str[num])         //判断p_str[num]单元参数是否为0
 {
  num++;
 }
 return num;            //返回num的值

}
char * mystrcpy(char * dest,const char * src)            //拷贝参数
{
 int num = 0;
 while (*(src + num))
 {
  *(dest + num) = *(src + num);          //把str[num]的值拷贝到dest[num]里面去
  num++;
 }
 *(dest + num) = 0;        //最后一个字符等于0
 return dest;
}
char * mystrcat(char * dest,const char * src)
{
 int num = 0,num1 = 0;
 while (*(dest + num))  //判断dest[num]是否为0;
 {
  num++;
 }
 while (*(src + num1))
 {
  *(dest + num + num1) = *(src + num1);  //把src[num1] 的值放入*(dest + num + num1)里
  num1++;
 }
 *(dest + num + num1) = 0;      //合并后加0结束
 return dest;

}
int main()
{
 char buf[20] = {};
 printf("有郊字符个数是%d\n",mystrlen("xyzabc"));        //调用长度函数
 printf ("拷贝结果是%s\n",mystrcpy(buf,"abcdefxyz"));    //调用拷贝函数  
 printf ("合并后的结果是%s\n",mystrcat(buf,"ost"));      //调用合并函数 
 
 return 0;
}wKioL1XrBz7ylVYqAADWzNRbPAk753.jpg