/*
字符串函数练习
手动写: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;
}
转载于:https://blog.51cto.com/fwguan/1691663