一、 strlen函数
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <assert.h>
//计数法
//size_t my_strlen(const char* p)
//{
// assert(p);
// size_t count = 0;
// while (*p)
// {
// p++;
// count++;
// }
// return count;
//}
//指针减指针
//size_t my_strlen(const char* p)
//{
// assert(p);
// const char* pr = p;
// while (*pr)
// {
// pr++;
// }
// return pr - p;
//}
//递归
size_t my_strlen(const char* p)
{
if (*p == '\0')
{
return 0;
}
else
{
p++;
return 1 + my_strlen(p);
}
}
int main()
{
char arr[] = "asdfghjkl";
size_t nums = my_strlen(arr);
printf("%u",nums);
return 0;
}
注意事项:
1. 参数指向的字符串必须以‘\0' 结束
2. 注意函数的返回值为size_t是无符号数
二、strcpy函数
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include<assert.h>
char* my_strcpy(