strlen的实现

简介: strlen的实现

查阅资料发现strlen的返回值为size_t的无符号数

方法1

size_t my_strlen(const char* str)
{
  assert(str);//断言判断str
  size_t n = 0;//用n来计算长度
  while (*str++)
  {
    n++;
  }
  return n;
}

方法2

size_t my_strlen(const char* str)
{
  assert(str);//断言判断str
  const char* p = str;//标记起点值
  while (*str)
  {
    str++;
  }
  return (str - p);//利用指针相减来计算长度
}

样例

#include <iostream>
using namespace std;
#include <string>
#include <assert.h>
size_t my_strlen(const char* str)
{
  assert(str);//断言判断str
  size_t n = 0;//用n来计算长度
  while (*str++)
  {
    n++;
  }
  return n;
}
int main()
{
  char a[] = "abcab";
  cout << my_strlen(a);
  return 0;
}

运行结果

目录
相关文章
|
2天前
strlen,strcpy,stract,strcmp,strstr函数的模拟实现
strlen,strcpy,stract,strcmp,strstr函数的模拟实现
25 3
|
2天前
|
C语言
字符串函数`strlen`、`strcpy`、`strcmp`、`strstr`、`strcat`的使用以及模拟实现
字符串函数`strlen`、`strcpy`、`strcmp`、`strstr`、`strcat`的使用以及模拟实现
|
2天前
|
存储 编译器 C语言
strlen函数详解
strlen函数详解
28 2
|
10月前
strlen和sizeof详解
strlen和sizeof详解
61 0
|
10月前
|
C语言
自己实现strcpy和strlen函数
自己实现strcpy和strlen函数
58 0
|
6月前
sizeof和strlen的对比
sizeof和strlen的对比
25 0
|
10月前
再见strlen函数
再见strlen函数
|
11月前
sizeof与strlen练习
sizeof与strlen练习
37 0
strlen, strcpy,strcmp,strcat,strncpy,strncmp,strncat,strst库函数的详细解析以及模拟实现
🐰strlen 🐰模拟strlen 🐰strcpy 🐰模拟strcpy 🐰strcat 🐰模拟strcat 🐰strcmp 🐰模拟strcmp 🐰strncpy 🐰strncat 🐰strncmp 🐰strstr 🐰模拟strstr