C语言 计算字符串长度的几种方法:

C语言计算字符串长度,可以手动计算也可以使用库函数或者sizeof()操作符。

自定义函数求长度
使用strlen()函数
使用sizeof()操作符

自定义函数

int cont_str(char *s)
{int i = 0;      while ( str[i++] != '\0');return --i;
}

使用string头文件中的strlen()函数

strlen(str); //假设str为待求的字符串数组名

使用sizeof()操作符

int len=sizeof(str)/sizeof(str[0])-1; //假设str为待求的字符串数组名

注意:
strlen()函数求出的字符串长度为有效长度,既不包含字符串末尾结束符 ‘\0’;

sizeof()操作符求出的长度包含字符串末尾的结束符 ‘\0’;

当在函数内部使用sizeof()求解由函数的形参传入的字符数组的长度时,得到的结果为指针的长度,既对应变量的字节数,而不是字符串的长度,此处一定要小心。(当数组或者字符串(可以理解为数组)作为函数参数是,是会当做指针来使用,指针的长度由编译器决定,大多数为4个byte. )
例如:

void strlen(char* str)
{int length;length = sizeof(str)/sizeof(str[0]);  //str为4个字节,str[0] = 1
}

C语言 计算字符串长度的几种方法相关推荐

  1. Shell脚本中计算字符串长度的5种方法

    这篇文章主要介绍了Shell脚本中计算字符串长度的5种方法,来自于个人Shell脚本长期的开发经验,需要的朋友可以参考下 有时在Linux操作系统中需要计算某个字符串的长度,通过查询资料整理了下目前S ...

  2. 计算字符串长度的三种方法(库函数 指针 )【详解】

    目录 求字符串长度的一般原理 方法一:strlen函数 函数原型 使用方法 方法二:指针+整数 方法三:指针-指针 总结: 求字符串长度的一般原理 求字符串长度简单来说就是计算一个字符串(字符数组)中 ...

  3. c语言求字符串长度的三种方法(部分略微优化)

    求字符串的长度,很多人都会直接想到用strlen函数,只需要头文件string.h就可以很轻松的实现,但对于我们c语言的初学者,也应该尝试用其他方法来进行实现,除了strlen函数外有三种方法可供参考 ...

  4. 计算字符串长度的五种方法

    方法一: ------------------------------------------------------------ 方法二; ----------------------------- ...

  5. C语言-求字符串长度的几种方法

    1.使用库函数<string.h> #include <stdio.h> #include <string.h> int main() {char arr[] = ...

  6. C语言计算字符串长度的方法

    C语言计算字符串长度的方法 思路分析 字符串的结束标志是'\0',因此计算字符串的长度的核心思想就是通过字符指针顺序检索每一个字符,直到检测到'\0'为止,以下是实现该算法的几种方式. 代码实现 1. ...

  7. C语言计算字符串长度

    C语言计算字符串长度 2022-0105 blog_005 方法一: C语言标准库中有一个函数可以计算字符串长度,strlen(). 方法二: 根据字符串总是以 '\0' 结尾,自定义计算方法. 注意 ...

  8. (转)Shell中获取字符串长度的七种方法

    Shell中获取字符串长度的七种方法 原文:http://blog.csdn.net/jerry_1126/article/details/51835119 求字符串操作在shell脚本中很常用,下面 ...

  9. JS判断字符串长度的几种方法(区分中文和英文)

    目的:计算字符串长度(英文占1个字符,中文汉字占2个字符) String.prototype.gblen = function() { var len = 0; for (var i=0; i< ...

  10. C语言获取字符串长度的几种方法

    在C语言中,想要获取字符串长度可以有很多方法,下面分别介绍 一.使用sizeof()运算符 在C语言中,sizeof() 是长度的运算符,括号中可以放入数据类型或者表达式,一般我们用来计算字符串长度. ...

最新文章

  1. 设置普通用户加入域配额
  2. Python绘图 二维、三维
  3. 转载《全国研究生考试专业课资料大全(部分资料)》
  4. 当年张一鸣找我一起创业,我没去
  5. redis主从架构宕机问题手动解决
  6. 首次公开!华为最前沿的X Labs实验室都在研究什么?5G+CV
  7. Docker 容器遇到的乱码问题
  8. IntelliJ IDEA提示忽略大小写
  9. SDUT 2170 The Largest SCC bfs+tarjan
  10. Android onTouchEvent方法
  11. 酒店消防安全知识培训PPT模板
  12. hibernate二级缓存机制
  13. 双拼输入法学习-搜狗方案-3
  14. ae渲染出现错误是什么问题_AE渲染输出总是损坏怎么办-解决AE渲染输出被损坏的方法 - 河东软件园...
  15. windows快捷键完整版分享
  16. 前端处理二进制文件流
  17. 使用代理爬去微信公众号_微信公众号怎么去推广运营?企业微信公众号要如何运营?微信公众号运营技巧,你get了吗?微信怎么去推广运营?...
  18. 四十三 iOS中UILabel部分字体颜色的修改
  19. 网上最全的系统服务,让PF降到50以下(转)
  20. android xml绘图p113-p117

热门文章

  1. RK3566上调试JL2101 1000M PHY
  2. 心电监护仪数据图解_【 心电监护仪怎么看图解】_检查结果_如何查看-大众养生网...
  3. 三年级计算机上册期末测试题,三年级上册期末试卷
  4. 修改html颜色代码,JavaScript实现更改网页背景与字体颜色的方法
  5. java ppt转图片,怎么用POI将PPT的内容转换为图片
  6. OpenGL ES 2.0 系列一
  7. Apache配置文件中的deny和allow的使用
  8. GetAdaptersInfo获取网卡信息
  9. Solidworks 3D Onshape 3D 繪圖自學分享
  10. python中shape 0_Python错误:找到包含0个样本(shape =(0,262))的数组,同时至少需要1个...