C语言strlen()函数:返回字符串的长度
转载自https://www.cnblogs.com/chenduzizhong/p/6032496.html
头文件:#include <string.h>
strlen()函数用来计算字符串的长度,其原型为:
unsigned int strlen (char *s);
【参数说明】s为指定的字符串。
strlen()用来计算指定的字符串s 的长度,不包括结束字符"\0"。
【返回值】返回字符串s 的字符数。
注意一下字符数组,例如
char str[100] = "http://see.xidian.edu.cn/cpp/u/biaozhunku/";
定义了一个大小为100的字符数组,但是仅有开始的11个字符被初始化了,剩下的都是0,所以 sizeof(str) 等于100,strlen(str) 等于11。
如果字符的个数等于字符数组的大小,那么strlen()的返回值就无法确定了,例如
char str[6] = "abcxyz";
strlen(str)的返回值将是不确定的。因为str的结尾不是0,strlen()会继续向后检索,直到遇到'\0',而这些区域的内容是不确定的。
注意:strlen() 函数计算的是字符串的实际长度,遇到第一个'\0'结束。如果你只定义没有给它赋初值,这个结果是不定的,它会从首地址一直找下去,直到遇到'\0'停止。而sizeof返回的是变量声明后所占的内存数,不是实际长度,此外sizeof不是函数,仅仅是一个操作符,strlen()是函数。
【函数示例】取得字符串 的长度。
#include<stdio.h>
#include<string.h>
int main()
{char *str1 = "http://see.xidian.edu.cn/cpp/u/shipin/";char str2[100] = "http://see.xidian.edu.cn/cpp/u/shipin_liming/";char str3[5] = "12345";printf("strlen(str1)=%d, sizeof(str1)=%d\n", strlen(str1), sizeof(str1));printf("strlen(str2)=%d, sizeof(str2)=%d\n", strlen(str2), sizeof(str2));printf("strlen(str3)=%d, sizeof(str3)=%d\n", strlen(str3), sizeof(str3));return 0;
}
运行结果:
strlen(str1)=38, sizeof(str1)=4
strlen(str1)=45, sizeof(str1)=100
strlen(str1)=53, sizeof(str1)=5
上面的运行结果,strlen(str1)=53显然不对,53是没有意义的。
C语言strlen()函数:返回字符串的长度相关推荐
- c语言子函数返回字符串的正确方式
c语言子函数返回字符串的错误 最近做leetcode上的一道题,通过子函数返回字符串.开始时用局部变量的字符串返回的,认为返回了字符串的首地址,便可以get到这个字符串,但由于局部变量离开函数后被回收 ...
- 不使用strlen函数求字符串的长度的方法
今天翻到了一些有趣的帖子,其中有一个是不使用strlen函数求字符串的长度. 我首先想到的是用一个变量做累加器,然后遍历循环这个字符串. #include <stdio.h> int st ...
- R语言str_length函数计算字符串的长度
R语言str_length函数计算字符串的长度 目录 R语言str_length函数计算字符串的长度 #导入包和库 #仿真数据
- C语言strlen函数求字符串长度及自己实现
strlen size_t strlen ( const char * str ); 1.字符串已经'\0'作为结束标志,strlen函数返回的是在字符串中'\0'前面出现的字符个数(不包含'\0' ...
- c语言能返回字符串吗,C语言中函数返回字符串的四种方法
在讨论着四种方法以前,首先要对函数有一个简单的认识,不管是在形实结合时,仍是在return语句返回时,都有一个拷贝的过程.你传进来的参数是个值,天然函数在工做以前要把这个值拷贝一份供本身使用,你传进来 ...
- C语言strlen函数与sizeof函数的区别
strlen函数与sizeof函数的区别 strlen函数和sizeof函数都可以用于获取字符串的长度,但是它们有几个重要的区别. strlen函数返回字符串的长度,而sizeof函数返回的是整个数组 ...
- 切割字符串长度php,C++_C语言中计算字符串长度与分割字符串的方法,C语言strlen()函数:返回字符串 - phpStudy...
C语言中计算字符串长度与分割字符串的方法 C语言strlen()函数:返回字符串的长度头文件: #include strlen()函数用来计算字符串的长度,其原型为: unsigned int str ...
- R语言str_subset函数和str_which函数:str_subset函数提取字符串向量中所有包含匹配字符的字符串、str_which函数返回字符串向量中所有包含匹配字符的位置(索引)
R语言str_subset函数和str_which函数:str_subset函数提取字符串向量中所有包含匹配字符的字符串.str_which函数返回字符串向量中所有包含匹配字符的位置(索引) 目录
- C语言 函数返回字符串的方法
函数返回字符串方法 字符串指针作为函数形参传入,并返回该指针 使用malloc函数动态分配(注意内存释放) 返回一个静态局部变量 static 使用全局变量 strcpy函数用法 字符串指针作为函数形 ...
- C语言 strlen 函数 - C语言零基础入门教程
目录 一.strlen 函数简介 二.strlen 函数实战 三.猜你喜欢 零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C 语言基础入门 一.strlen 函数简介 ...
最新文章
- 30分钟从工作电脑入侵公司内网!Win11:更新强制要求有TPM2.0,知道为啥了吧?...
- iPhone的UDID与push中使用的device token的关系
- 视觉SLAM十四讲学习笔记-第六讲-非线性优化的状态估计问题
- 计算机的编程发源地,计算机编程: C典型上机试题
- wxpython pyqt_python gui 中三大框架tkinter ,wxpython, pyqt如何选择
- [BZOJ4756]Promotion Counting
- script language=javascriptwindow.location.href=http://blog.securitycn.net/script
- C语言数字雨--90行代码
- zabbix开启SNMPTrap功能
- curl安装的docker卸载
- python装逼代码_能够让你装逼的10个Python小技巧
- 2021杭电多校第三场 D题—Game on Plane(思维题)
- docker,deamon.json文件说明
- kaka启动出现:Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x00000c00000, 1073,0)
- userland免root运行linux,UserLAnd(GNU/Linux安装)
- Radio Userland已更新,版本号未更改...
- TP6使用守护进程完成队列任务
- webstorm热更新
- 基于 MATLAB fitcsvm 的 OVR SVM 多分类器实现
- 什么是服务器未响应手机,手机服务器未响应