发布于:2021-02-20 00:00:50
0
214
0
什么是strlen()
strlen()是一个查找字符串长度的函数。它统计字符串中显示的字符总数,消除空字符。字符串中的字符总数包括字母、特殊字符和数字,其中包含空格。
在C教程中strlen()和sizeof()对于字符串的区别中,您将了解:
什么是strlen()
什么是sizeof()
strlen()的语法
sizeof()的语法
strlen()和sizeof()之间的区别
什么是sizeof()
sizeof()是一个用于计算其操作数大小的函数。它返回特定变量的大小。此函数可以应用于任何数据类型,包括诸如整数和指针类型、浮点类型、结构或联合之类的基元类型。在32位系统和64位系统上,包含sizeof()的程序的输出可能不同。
关键区别:
Strlen方法用于查找数组的长度,而sizeof()方法用于查找数据的实际大小。
Strlen()计算字符串中的字符数,而sizeof()返回操作数的大小。
Strlen()查找变量的空值,但sizeof()不在乎变量值。
strlen()中的返回值是long int,而sizeof()中的返回值是unsigned int。
strlen()的语法
strcount = strlen(my_string);
这里,my_string是一个字符数组变量。
strlen()示例
在下面的C程序中,我们声明了char类型的字符串变量。Strng变量作为strlen()函数的参数传递,用于查找字符串的长度。
#include#includeint main() { char strng[] = "January"; printf("Length of given string is: %lun", strlen(strng)); }
输出:
Length of given string is: 7
sizeof()的语法
语法1
sizeof(type):type=引用的类型
sizeof(type)示例:
在下面的代码中,&type给出变量的地址(双x)。它以1递增,这给出了可以存储下一个x类型变量的地址。
将x类型转换为char*并取其差值将使您能够知道存储在内存中的char类型变量的总数。我们使用getchar()读取字符。
#include#define my_sizeof(type) (char *)(&type+1)-(char*)(&type) int main() { double x; printf("%ld", my_sizeof(x)); getchar(); return 0; }
输出:
8
语法2
sizeof(variable name):variable name=要确定大小的变量的名称。
在下面的C程序中,我们打印的是大小字符数据类型。Printf语句包含带有参数char的sizeof函数。
sizeof(变量名)示例:
#includeint main(){ printf("sizeof(char) = %dnn", sizeof(char)); return 0;}
输出:
sizeof(char) = 1
语法3
sizeof(expression):expression=必须计算的表达式。
sizeof(表达式)示例:
在下面的程序中,我们首先计算并打印变量的大小。之后,我们计算表达式,将其存储在变量a中,并在printf语句中显示结果。
#includeint main() { char p = 'S'; double q = 4.65; printf("Size of variable p : %dn",sizeof(p)); printf("Size of an expression : %dn",sizeof(p+q)); int a = (int)(p+q); printf("Size of explicitly converted expression : %dn",sizeof(a)); return 0;}
输出:
Size of variable p : 1 Size of an expression : 8 Size of explicitly converted expression : 4
strlen()和sizeof()之间的区别
以下是strlen()和sizeof()之间的重要区别:
作者介绍