strlen:
#include<stdio.h>
#include<windows.h>
//模拟实现strlen 非递归
int mystrlen1(const char* str)
{
if (str == NULL)
{
return -1;
}
int count = 0;
char*p = str;
while (*p != '\0')
{
++p;
++count;
}
return count;
}
//模拟实现strlen(递归)
int mystrlen2(const char* str)
{
if (str == NULL)
{
return -1;
}
if (*str == '\0')
{
return 0;
}
return 1+mystrlen2(str + 1);
}
//模拟实现strlen
int mystrlen3(const char* str)
{
if (str == NULL)
{
return -1;
}
char* p = str;
while (*p != '\0')
{
++p;
}
return p - str;
}
int main()
{
char str[] = "abcdefg";
printf("sys strlen is %d\n", strlen(str));
printf("sys sizeof is %d\n", sizeof(str));
int ret1 = mystrlen1(str);
printf("strlen = %d\n", ret1);
int ret2 = mystrlen2(str);
print