C语言中strlen函数如何使用及如何手动实现其功能?

2026-04-19 05:441阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计396个文字,预计阅读时间需要2分钟。

C语言中strlen函数如何使用及如何手动实现其功能?

`strlen函数的简单使用与模拟实现strlen函数的简单使用strlen函数的三种模拟实现使用临时变量的方法使用函数递归的方法使用指针相减的方法strlen函数的简单使用strlen函数是用来计算字符串长度的标准函数。以下是它的基本使用方法:`

c#include

int main() { char str[]=Hello, World!; int length=strlen(str); printf(The length of the string is: %d\n, length); return 0;}

strlen函数的简单运用与模拟实现 strlen函数的简单使用strlen函数的三种模拟实现使用临时变量的方法使用函数递归的方法使用指针相减的方法

strlen函数的简单使用

strlen函数是用来计算字符串长度的一个函数,返回类型是size_t

#include<stdio.h> #include<string.h> int main() { char arr[] = "hello world"; size_t;//返回值是size_t unsigned int int len = strlen(arr); printf("len=%d\n", len); return 0; }

下面就是对于返回值类型是size_t的一个很形象的例子

int main() { const char* p1 = "abc"; const char* p2 = "adbcdef"; if (strlen(p1) - strlen(p2) > 0) //因为返回值是无符号数,所以没有负数 { printf("hehe"); } else { printf("haha"); } return 0; }

strlen函数的三种模拟实现

使用临时变量的方法

C语言中strlen函数如何使用及如何手动实现其功能?

#include<stdio.h> #include<assert.h> //模拟实现strlen size_t my_strlen(const char* str) { int count = 0;//计数器 assert(str != NULL); //断言不是空指针,如果没有这步,当是空指针的时候可能会崩溃 while (*str != '\0') { count++; str++; } return count; } int main() { char arr[] = "hello"; int len = my_strlen(arr); printf("%d\n", len); return 0; }

使用函数递归的方法

#include<stdio.h> #include<assert.h> //不使用临时变量 size_t my_strlen(const char* str) { assert(str != NULL); if (*str != '\0') { return 1 + my_strlen(str + 1); } else { return 0; } } int main() { char arr[] = "hello"; int len = my_strlen(arr); printf("%d\n", len); return 0; }

使用指针相减的方法

//指针相减的做法 size_t my_strlen(const char* str) { assert(str != NULL); const char* start = str; //str 不能初始化char类型,所以用const while (*str != '\0') { str++; } return str - start; } int main() { char arr[] = "hello"; int len = my_strlen(arr); printf("%d\n", len); return 0; }

到此这篇关于strlen函数的使用与模拟实现strlen的文章就介绍到这了,更多相关strlen函数模拟实现strlen内容请搜索自由互联以前的文章或继续浏览下面的相关文章希望大家以后多多支持自由互联!

本文共计396个文字,预计阅读时间需要2分钟。

C语言中strlen函数如何使用及如何手动实现其功能?

`strlen函数的简单使用与模拟实现strlen函数的简单使用strlen函数的三种模拟实现使用临时变量的方法使用函数递归的方法使用指针相减的方法strlen函数的简单使用strlen函数是用来计算字符串长度的标准函数。以下是它的基本使用方法:`

c#include

int main() { char str[]=Hello, World!; int length=strlen(str); printf(The length of the string is: %d\n, length); return 0;}

strlen函数的简单运用与模拟实现 strlen函数的简单使用strlen函数的三种模拟实现使用临时变量的方法使用函数递归的方法使用指针相减的方法

strlen函数的简单使用

strlen函数是用来计算字符串长度的一个函数,返回类型是size_t

#include<stdio.h> #include<string.h> int main() { char arr[] = "hello world"; size_t;//返回值是size_t unsigned int int len = strlen(arr); printf("len=%d\n", len); return 0; }

下面就是对于返回值类型是size_t的一个很形象的例子

int main() { const char* p1 = "abc"; const char* p2 = "adbcdef"; if (strlen(p1) - strlen(p2) > 0) //因为返回值是无符号数,所以没有负数 { printf("hehe"); } else { printf("haha"); } return 0; }

strlen函数的三种模拟实现

使用临时变量的方法

C语言中strlen函数如何使用及如何手动实现其功能?

#include<stdio.h> #include<assert.h> //模拟实现strlen size_t my_strlen(const char* str) { int count = 0;//计数器 assert(str != NULL); //断言不是空指针,如果没有这步,当是空指针的时候可能会崩溃 while (*str != '\0') { count++; str++; } return count; } int main() { char arr[] = "hello"; int len = my_strlen(arr); printf("%d\n", len); return 0; }

使用函数递归的方法

#include<stdio.h> #include<assert.h> //不使用临时变量 size_t my_strlen(const char* str) { assert(str != NULL); if (*str != '\0') { return 1 + my_strlen(str + 1); } else { return 0; } } int main() { char arr[] = "hello"; int len = my_strlen(arr); printf("%d\n", len); return 0; }

使用指针相减的方法

//指针相减的做法 size_t my_strlen(const char* str) { assert(str != NULL); const char* start = str; //str 不能初始化char类型,所以用const while (*str != '\0') { str++; } return str - start; } int main() { char arr[] = "hello"; int len = my_strlen(arr); printf("%d\n", len); return 0; }

到此这篇关于strlen函数的使用与模拟实现strlen的文章就介绍到这了,更多相关strlen函数模拟实现strlen内容请搜索自由互联以前的文章或继续浏览下面的相关文章希望大家以后多多支持自由互联!