求字符串长度的三种方法
•
算法结构
求字符串长度的三种方法
一 递归求字符串长度
#include
#include
int my_strlen(const char* str)
{
assert(str);
if (*str != '\0')
return 1+my_strlen(str + 1); \\递归 依次+1到了'\0'停止
else
return 0;
}
int main()
{
char arr[] = "abcdefg";
int len=my_strlen(arr);
printf("字符串的长度为:%d\n", len);
return 0;
二 常规方法求字符串长度
#include
int my_strlen(char* str)
{
int count = 0;
while (*str != '\0')
{
count++;
str++;
}
return count;
}
int main()
{
char arr[] = "abcedf";
int len=my_strlen(arr);
printf("%d\n", len);
return 0;
}
三 用地址相减求字符串的长度
#include
int my_strlen(char* str)
{
char* start = str;
while (*str != '\0')
{
str++;
}
return str - start;
}
int main()
{
char arr[] = "abcdefg";
int len = my_strlen(arr);
printf("%d\n", len);
return 0;
}
本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://net2asp.com/57dd262b83.html
