sizeof与strlen的区别

本文详细介绍了C/C++中的strlen函数与sizeof操作符的区别与联系。strlen用于计算字符串中'/0'之前的字符数量,而sizeof则返回表达式结果所占用的字节数。两者在处理字符数组时看似相似,但实际用途与机制大相径庭。

sizeof(表达式)   C/C++关键字(不是函数)。

功能:返回表达式结果所占机器字节的大小。

 

strlen(字串)   C/C++标准库的函数(不是关键字),在头文件string.h中声明。

功能:计算字串中的'/0'之前的字符个数。

      特别注意:strlen总是假定传给它的参数是以null结束符'/0'结尾的,所以如果传给strlen的参数不是以'/0'结尾的话,strlen会一直计算长度知道遇到'/0',所以在给strlen传参时要特别注意。

 

很多人觉得sizeofstrlen对于一个字符数组运算后的结果“差不多”,那是因为在现在的X86计算机中,一个ASCII字符刚好是一个机器字节

 

 

NAME

       strlen - calculate the length of a string

 

SYNOPSIS

       #include <string.h>

 

       size_t strlen(const char *s);

 

DESCRIPTION

       The  strlen()  function  calculates  the  length  of  the string s, not

       including the terminating '/0' character.

 

RETURN VALUE

       The strlen() function returns the number of characters in s.

 

CONFORMING TO

       SVr4, 4.3BSD, C89, C99.

 

SEE ALSO

       string(3), wcslen(3), wcsnlen(3)

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值