#include <stdio.h>
#include <stdlib.h> //malloc()函数
typedef unsigned int size_t;
size_t my_strlen(const char * str)
{
const char *sc = NULL;
if(str == NULL)
return 0;
for(sc = str;*sc != ' ';sc++)
{
/* do nothing */
}
return sc - str;
}
void * my_memcpy(void *pDst,const void *pSrc,size_t len)
{
if((pDst == NULL)&&(pSrc == NULL)) //判断指针是否为空
return NULL;
char *tmp = (char *)pDst;
char *s = (char *)pSrc;
while(len--)
*tmp++ = *s++;
return pDst;
}
int main()
{
char *src = "hello world";
int count = my_strlen(src);
printf("count = %d
",count);
char *dst = (char *)malloc(count + 1); //申请空间
my_memcpy(dst,src,count);
*(dst+count) = ' ';
printf("%s
",dst);
return 0;
}
执行结果: