利用一个变量计数
#include<stdio.h>
#include<assert.h>
/*计算字符串的长度*/
int My_strlen(const char* stra)//为安全起见,const 修饰指针,防止被改变
{
assert(stra != nullptr);
int i = 0;
while (stra[i] != '\0')
{
++i;
}
return i;
}
int main()
{
char stra[10] = { "zytzyt" };
int len = My_strlen(stra);
printf("%d", len);
return 0;
}
利用指针计数。两个同类型指针,指向连续空间可以相减。减后的结果是数据元素个数。
int My_strlen(const char* stra)//为安全起见,const 修饰指针,防止被改变
{
assert(stra != nullptr);
const char* cp = stra;//定义一个常指针
while (*cp != '\0')
{
cp++;
}
return (cp-stra);//两个同类型指针,指向连续空间可以相减。减后的结果是数据元素个数
}