如何在c语言中计算字符串长度

苡偂現恠 1个月前 已收到1个回答 举报

硪夶兲才 2星

共回答了95个问题采纳率:96.4% 评论

C语言计算字符串长度

1、自定义函数求长度


2、使用strlen()函数


3、使用sizeof()操作符


4、使用length()函数


利用自定义函数的方法:

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

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

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

使用sizeof()操作符

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

使用length()函数

char a[10] std::cin>>a; length=a.length()

注意:

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

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

3、length()函数求出的字符串长度不包含字符串末尾结束符’\0’。

4、当在函数内部使用sizeof()求解由函数的形参传入的字符数组的长度时,得到的结果。

5、为指针的长度,既对应变量的字节数,而不是字符串的长度,此处一定要小心。

6、C/C++的strlen(str)和str.length()和str.size()都可以求字符串长度。其中str.length()和str.size()是用于求string类对象的成员函数,strlen(str)是用于求字符数组的长度,其参数是char*。

7、这三种函数strlen、length、size函数计算的字符串长度都不算最后的操作符’\0’。

strlen函数用之前需要先对字符数组定义,例如char str[]={“hello world”};或者char str[]={‘h’,‘e’,‘l’,‘l’,‘o’,’ ‘,‘w’,‘o’,‘r’,‘l’,‘d’,’\0’}。

8、getchar()就是从键盘获取字符,直到回车为止。

第一种:strlen(char*)函数求的是字符串的实际长度,它求得方法是从开始到遇到第一个’\0’,如果你只定义没有给它赋初值,这个结果是不定的,它会从aa首地址一直找下去,直到遇到’\0’停止。


第二种:sizeof(),求所占总空间的字节数。

strlen函数用法见下链接:https://blog.csdn.net/u012209626/article/details/47449885cin.get()函数、cin.getline()函数、getline()函数、gets()函数、getchar()函数用法见下链接:https://www.cnblogs.com/qiang-wei/p/9332201.html

8小时前

17
可能相似的问题

热门问题推荐

Copyright © 2024 微短问答 All rights reserved. 粤ICP备2021119249号 站务邮箱 service@wdace.com