2016 - 2024

感恩一路有你

c语言i++和++i C语言中strlen与sizeof的区别是什么?

浏览量:2840 时间:2021-03-13 06:25:36 作者:admin

C语言中strlen与sizeof的区别是什么?

strlen和sizeof之间的具体区别如下:

1。Strlen是C语言库函数之一;sizeof是运算符,也是C语言关键字之一。

2. strlen函数用于计算字符串长度,参数为char*type。声明为

int strlen(const char*s)

计算从s到字符串“0”结尾的所有元素的数目,不包括0。

操作对象的大小可以是任何变量或类型,计算结果是变量或类型占用的实际长度(内存字节数)。

3. Strlen是一个函数,其后续参数必须在括号中;

sizeof在计算变量占用的字节数时可以使用括号,也可以不使用括号,但在计算数据类型占用的字节数时必须使用。

4. 以字符串为例,说明了它们之间的区别:

(1)将char s[10]=“ABCD”

strlen(s)定义为字符串的长度,即实际字符数。结果是4。

sizeof(s)是数组的大小,值是10。

(2)define char*s=“ABCD”

strlen(s)和strlen(“ABCD”)相同,都是4。

Sizeof(s)是指针占用的空间,它取决于机器字的长度。在32位计算机中,值为4。

sizeof(“ABCD”)是字符串的实际内存大小,包括“0”,值为5。

C语言中要使用sizeof()应包含那个头文件?

在C语言中,使用sizeof()不需要包含头文件,因为sizeof在C语言中实际上是一种单目运算符,也是关键字之一,所以可以直接使用。在C语言中,sizeof()是一个用来判断数据类型或表达式长度的操作符。简而言之,它的功能是返回对象或类型占用的内存字节数。Sizeof计算对象的大小,也转换为计算对象类型。换句话说,同一类型的不同对象的sizeof值是一致的。Sizeof计算表达式。编译器根据表达式的最终结果类型确定大小。通常,它不计算表达式。通常,在32位编译环境中,sizeof(int)的值是4。strlen(char*)函数计算字符串的实际长度,直到第一个“0”,然后返回计数值,不包括“0”。函数的作用是:返回声明变量占用的内存,而不是实际长度。

2. 作为sizeof参数的数组不会退化。如果传递给strlen,它将退化为指针。

3. Sizeof可以使用type作为参数,strlen只能使用char*作为参数,并且必须以“”0 “”结尾。

c语言i++和++i size在c语言中是什么意思 c语言sizeof怎么计算字节数

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。