众说周知strlen函数是用来计算字符串长度的函数,它的使用需要应用到头文件
#include<string.h>
#include<stdio.h>
#include<string.h>//最纯正的味儿
int main()
{
char l[10];
int m;
gets(l);//gets函数用作输入字符串进数组
m=strlen(l);
printf("%d",m);
return 0;
}
那么如何不用strlen函数就能计算出字符串的长度呢?
接下来我们 来看看这简单的方法吧!!!
方法NO.1
#include<stdio.h>
int t(char *str)//利用指针完成strlen函数的作用
{
char *p=str;
while(*p !='\0'){
*p++;
}
printf("%p\n%p\n",p,str);
return p-str;//利用初始地址和最终地址的差值就可以判断出字符串长度的差异
}//这里我们需要提前建一个函数
int main()
{
char l[10];
gets(l);
int m=t(l);//然后在这里调用
printf("这个字符串长度为%d\n",m);
return 0;
}
方法NO.2
#include<stdio.h>
int t(char *p)//计数器实现strlen函数
{
int m=0;
while(*p != '\0')//指针停止的条件
{
m++;
*p++;//指针后移
}
return m;
}
int main()
{
char l[10];
gets(l);
int m=t(l);
printf("这个字符串长度为%d\n",m);
return 0;
}