C语言:strlen的三种实现方法

2021年09月15日 阅读数:1
这篇文章主要向大家介绍C语言:strlen的三种实现方法,主要内容包括基础应用、实用技巧、原理机制等方面,希望对大家有所帮助。

方法一:指针的方式
数组

#include <stdio.h>ide

#include <stdlib.h>spa


int my_strlen(const char *str)指针

{字符串

char *tmp = str;        //用tmp保存原指针的地址it

while (*str)            //str++直到‘\0’io

{class

str++;方法

}tab

return str - tmp;      //两个指针相减,获得字符长度

}

int main()

{

char *p = "bit";

printf("%d\n", my_strlen(p));

system("pause");

return 0;

}

方法二:计数器方式

#include <stdio.h>


int my_strlen(const char *ptr)

{

int len = 0;

while (*ptr)

{

len++;    //读取一个字符串,计数器+1

ptr++;

}

return len;

}


int main()

{

char p[] = "abcdefg";

printf("%d\n",my_strlen(p));

return 0;

}

方法三:数组

#include <stdio.h>

#include <stdlib.h>


int main()

{

char arr[]="hdffkfefewf";

int len = sizeof(arr) / sizeof(arr[0]);

char *pstart = arr;

char *pend = arr + len;

printf("%d\n",pend - pstart);

system("pause");

return 0;

}