Error[8]: Undefined offset: 334, File: /www/wwwroot/outofmemory.cn/tmp/plugin_ss_superseo_model_superseo.php, Line: 121
File: /www/wwwroot/outofmemory.cn/tmp/plugin_ss_superseo_model_superseo.php, Line: 473, decode(

初学入门 纯新手

粗略认识c语言 sizeof关键字 和 starlen 函数 的区别 -------------👉sizeof

sizeof 是一个关键字,而不是一个函数,可用于一个数据类型或者表达式。

int main()
{
	int arr1[] = { 1,2,3,4,5,6,7,8 };
	char crr1[] = { 1,2,3,4,5 };
	char crr2[] = { '1','2','3','4' };
	char crr3[14] = { "hello world" };
	char crr4[] = { "hello world" };

	//sizeof可用一种数据类型 一个表达式
	printf("int数据类型的大小为 %d", sizeof(int)); //显示整数数据类型的大小。
	printf("\n字符数据类型的大小为 %d", sizeof(char)); //显示字符数据类型的大小
	printf("\n浮动数据类型的大小为 %d\n", sizeof(float)); //显示浮动数据类型的大小。
	printf("%d\n", sizeof(arr1));
	printf("%d\n", sizeof(arr1[2]));
	

	printf("%d\n", sizeof(arr1)/sizeof(arr1[0]));//计算数组内元素的个数



	printf("%d\n", sizeof(crr1));//字符串组的大小
	printf("%d\n", sizeof(crr3));
	printf("%d\n", sizeof(crr4));
]

对比可以查看输出结果:

可以看出,sizeof可以表达已经存储的数据的大,也可以精确到数组里面的一个元素
因此可以用来作为 表达数组元素个数的表达式 如上图单独空出来的代码

--------------------👉strlen函数

与sizeof的泛用性不同(毕竟一个是关键字,一个是库函数),适用于计算字符串的大小
如 ‘1’ ‘a’ 这种都可以称为一个字符
‘hello world’ 这样的一串字符称为字符串,字符串结束的标志为 ‘/0’,具体理解可以参考如下代码

int main()
{
	char crr1[] = { 1,2,3,4,5,'}';//'char'是字符串结束的标志,不算长度,但是占内存一个字节 [
	] crr2='1' , { '2','3','4','}';char[14
	] crr3="hello world"} ; { char []
	= crr4"hello world"} ; { char []
	= crr5"hello w}orld"; printf { ( "%d\n",
	strlen()) ;//字符串长度为5,若没有结尾的printf 字符串的长度为随机值crr1("%d\n",   sizeof
	()); //对比sizeof 计算的是存储数据的大小,与printf无关,输出结果为'6',且如果输入(,输入结果变为'6'"%d\n"crr1,strlen(  
)


	);//同上printf ("%d\n"crr2,sizeof()
	);//hello world 占11个字符printf ("%d\n"crr2,sizeof(

)

	);//输出结果为14,说明sizeof计算的是数据存储在内存的大小,与内容无关printf ("%d\n"crr3,strlen()
	);//输出结果为11,对比说明starlen计算的仅是字符串长度printf ("%d\n"crr3,strlen()
	);//同理,输出结果11  printf不算入字符串长度内( "%d\n",crr4sizeof())
	;//输出结果为12,末尾自动补了//’printf'占一个内存,如果格子满了,则不会自动补("%d\n", strlen(crr4));//'printf'是字符串的结尾

	(

	"%d\n",sizeof( ))crr5;return0 ;
	}数据类型[+++][+++] [+++][+++]crr5[+++][+++][+++]

	[+++] [+++][+++]
[+++]

对比输出图,对starlen的作用可以有更直观的理解

总结

sizeof是关键字,用于计算出的是数据所占内存的大小,可用于一个[+++]或者表达式。
即使数据为空,占了内存也会计入在内

可用sizeof计算数字的元素个数,用于解决基础数学问题

strlen 是c语言的库函数,仅用于计算字符串的长度,’\0’是字符串结束的标志
与内存无关


新手写文,记录所学,如有帮助,可以走波三连♥♥♥,一起进步
如有错误,还请大佬指√,万分感谢

)
File: /www/wwwroot/outofmemory.cn/tmp/route_read.php, Line: 126, InsideLink()
File: /www/wwwroot/outofmemory.cn/tmp/index.inc.php, Line: 165, include(/www/wwwroot/outofmemory.cn/tmp/route_read.php)
File: /www/wwwroot/outofmemory.cn/index.php, Line: 30, include(/www/wwwroot/outofmemory.cn/tmp/index.inc.php)
Error[8]: Undefined offset: 335, File: /www/wwwroot/outofmemory.cn/tmp/plugin_ss_superseo_model_superseo.php, Line: 121
File: /www/wwwroot/outofmemory.cn/tmp/plugin_ss_superseo_model_superseo.php, Line: 473, decode(

初学入门 纯新手

粗略认识c语言 sizeof关键字 和 starlen 函数 的区别 -------------👉sizeof

sizeof 是一个关键字,而不是一个函数,可用于一个数据类型或者表达式。

int main()
{
	int arr1[] = { 1,2,3,4,5,6,7,8 };
	char crr1[] = { 1,2,3,4,5 };
	char crr2[] = { '1','2','3','4' };
	char crr3[14] = { "hello world" };
	char crr4[] = { "hello world" };

	//sizeof可用一种数据类型 一个表达式
	printf("int数据类型的大小为 %d", sizeof(int)); //显示整数数据类型的大小。
	printf("\n字符数据类型的大小为 %d", sizeof(char)); //显示字符数据类型的大小
	printf("\n浮动数据类型的大小为 %d\n", sizeof(float)); //显示浮动数据类型的大小。
	printf("%d\n", sizeof(arr1));
	printf("%d\n", sizeof(arr1[2]));
	

	printf("%d\n", sizeof(arr1)/sizeof(arr1[0]));//计算数组内元素的个数



	printf("%d\n", sizeof(crr1));//字符串组的大小
	printf("%d\n", sizeof(crr3));
	printf("%d\n", sizeof(crr4));
]

对比可以查看输出结果:

可以看出,sizeof可以表达已经存储的数据的大,也可以精确到数组里面的一个元素
因此可以用来作为 表达数组元素个数的表达式 如上图单独空出来的代码

--------------------👉strlen函数

与sizeof的泛用性不同(毕竟一个是关键字,一个是库函数),适用于计算字符串的大小
如 ‘1’ ‘a’ 这种都可以称为一个字符
‘hello world’ 这样的一串字符称为字符串,字符串结束的标志为 ‘/0’,具体理解可以参考如下代码

int main()
{
	char crr1[] = { 1,2,3,4,5,'}';//'char'是字符串结束的标志,不算长度,但是占内存一个字节 [
	] crr2='1' , { '2','3','4','}';char[14
	] crr3="hello world"} ; { char []
	= crr4"hello world"} ; { char []
	= crr5"hello w}orld"; printf { ( "%d\n",
	strlen()) ;//字符串长度为5,若没有结尾的printf 字符串的长度为随机值crr1("%d\n",   sizeof
	()); //对比sizeof 计算的是存储数据的大小,与printf无关,输出结果为'6',且如果输入(,输入结果变为'6'"%d\n"crr1,strlen(  
)


	);//同上printf ("%d\n"crr2,sizeof()
	);//hello world 占11个字符printf ("%d\n"crr2,sizeof(

)

	);//输出结果为14,说明sizeof计算的是数据存储在内存的大小,与内容无关printf ("%d\n"crr3,strlen()
	);//输出结果为11,对比说明starlen计算的仅是字符串长度printf ("%d\n"crr3,strlen()
	);//同理,输出结果11  printf不算入字符串长度内( "%d\n",crr4sizeof())
	;//输出结果为12,末尾自动补了//’printf'占一个内存,如果格子满了,则不会自动补("%d\n", strlen(crr4));//'printf'是字符串的结尾

	(

	"%d\n",sizeof( ))crr5;return0 ;
	}数据类型[+++] [+++][+++]crr5[+++][+++][+++]

	[+++] [+++][+++]
[+++]

对比输出图,对starlen的作用可以有更直观的理解

总结

sizeof是关键字,用于计算出的是数据所占内存的大小,可用于一个[+++]或者表达式。
即使数据为空,占了内存也会计入在内

可用sizeof计算数字的元素个数,用于解决基础数学问题

strlen 是c语言的库函数,仅用于计算字符串的长度,’\0’是字符串结束的标志
与内存无关


新手写文,记录所学,如有帮助,可以走波三连♥♥♥,一起进步
如有错误,还请大佬指√,万分感谢

)
File: /www/wwwroot/outofmemory.cn/tmp/route_read.php, Line: 126, InsideLink()
File: /www/wwwroot/outofmemory.cn/tmp/index.inc.php, Line: 165, include(/www/wwwroot/outofmemory.cn/tmp/route_read.php)
File: /www/wwwroot/outofmemory.cn/index.php, Line: 30, include(/www/wwwroot/outofmemory.cn/tmp/index.inc.php)
Error[8]: Undefined offset: 336, File: /www/wwwroot/outofmemory.cn/tmp/plugin_ss_superseo_model_superseo.php, Line: 121
File: /www/wwwroot/outofmemory.cn/tmp/plugin_ss_superseo_model_superseo.php, Line: 473, decode(

初学入门 纯新手

粗略认识c语言 sizeof关键字 和 starlen 函数 的区别 -------------👉sizeof

sizeof 是一个关键字,而不是一个函数,可用于一个数据类型或者表达式。

int main()
{
	int arr1[] = { 1,2,3,4,5,6,7,8 };
	char crr1[] = { 1,2,3,4,5 };
	char crr2[] = { '1','2','3','4' };
	char crr3[14] = { "hello world" };
	char crr4[] = { "hello world" };

	//sizeof可用一种数据类型 一个表达式
	printf("int数据类型的大小为 %d", sizeof(int)); //显示整数数据类型的大小。
	printf("\n字符数据类型的大小为 %d", sizeof(char)); //显示字符数据类型的大小
	printf("\n浮动数据类型的大小为 %d\n", sizeof(float)); //显示浮动数据类型的大小。
	printf("%d\n", sizeof(arr1));
	printf("%d\n", sizeof(arr1[2]));
	

	printf("%d\n", sizeof(arr1)/sizeof(arr1[0]));//计算数组内元素的个数



	printf("%d\n", sizeof(crr1));//字符串组的大小
	printf("%d\n", sizeof(crr3));
	printf("%d\n", sizeof(crr4));
]

对比可以查看输出结果:

可以看出,sizeof可以表达已经存储的数据的大,也可以精确到数组里面的一个元素
因此可以用来作为 表达数组元素个数的表达式 如上图单独空出来的代码

--------------------👉strlen函数

与sizeof的泛用性不同(毕竟一个是关键字,一个是库函数),适用于计算字符串的大小
如 ‘1’ ‘a’ 这种都可以称为一个字符
‘hello world’ 这样的一串字符称为字符串,字符串结束的标志为 ‘/0’,具体理解可以参考如下代码

int main()
{
	char crr1[] = { 1,2,3,4,5,'}';//'char'是字符串结束的标志,不算长度,但是占内存一个字节 [
	] crr2='1' , { '2','3','4','}';char[14
	] crr3="hello world"} ; { char []
	= crr4"hello world"} ; { char []
	= crr5"hello w}orld"; printf { ( "%d\n",
	strlen()) ;//字符串长度为5,若没有结尾的printf 字符串的长度为随机值crr1("%d\n",   sizeof
	()); //对比sizeof 计算的是存储数据的大小,与printf无关,输出结果为'6',且如果输入(,输入结果变为'6'"%d\n"crr1,strlen(  
)


	);//同上printf ("%d\n"crr2,sizeof()
	);//hello world 占11个字符printf ("%d\n"crr2,sizeof(

)

	);//输出结果为14,说明sizeof计算的是数据存储在内存的大小,与内容无关printf ("%d\n"crr3,strlen()
	);//输出结果为11,对比说明starlen计算的仅是字符串长度printf ("%d\n"crr3,strlen()
	);//同理,输出结果11  printf不算入字符串长度内( "%d\n",crr4sizeof())
	;//输出结果为12,末尾自动补了//’printf'占一个内存,如果格子满了,则不会自动补("%d\n", strlen(crr4));//'printf'是字符串的结尾

	(

	"%d\n",sizeof( ))crr5;return0 ;
	}数据类型 [+++][+++]crr5[+++][+++][+++]

	[+++] [+++][+++]
[+++]

对比输出图,对starlen的作用可以有更直观的理解

总结

sizeof是关键字,用于计算出的是数据所占内存的大小,可用于一个[+++]或者表达式。
即使数据为空,占了内存也会计入在内

可用sizeof计算数字的元素个数,用于解决基础数学问题

strlen 是c语言的库函数,仅用于计算字符串的长度,’\0’是字符串结束的标志
与内存无关


新手写文,记录所学,如有帮助,可以走波三连♥♥♥,一起进步
如有错误,还请大佬指√,万分感谢

)
File: /www/wwwroot/outofmemory.cn/tmp/route_read.php, Line: 126, InsideLink()
File: /www/wwwroot/outofmemory.cn/tmp/index.inc.php, Line: 165, include(/www/wwwroot/outofmemory.cn/tmp/route_read.php)
File: /www/wwwroot/outofmemory.cn/index.php, Line: 30, include(/www/wwwroot/outofmemory.cn/tmp/index.inc.php)
Error[8]: Undefined offset: 337, File: /www/wwwroot/outofmemory.cn/tmp/plugin_ss_superseo_model_superseo.php, Line: 121
File: /www/wwwroot/outofmemory.cn/tmp/plugin_ss_superseo_model_superseo.php, Line: 473, decode(

初学入门 纯新手

粗略认识c语言 sizeof关键字 和 starlen 函数 的区别 -------------👉sizeof

sizeof 是一个关键字,而不是一个函数,可用于一个数据类型或者表达式。

int main()
{
	int arr1[] = { 1,2,3,4,5,6,7,8 };
	char crr1[] = { 1,2,3,4,5 };
	char crr2[] = { '1','2','3','4' };
	char crr3[14] = { "hello world" };
	char crr4[] = { "hello world" };

	//sizeof可用一种数据类型 一个表达式
	printf("int数据类型的大小为 %d", sizeof(int)); //显示整数数据类型的大小。
	printf("\n字符数据类型的大小为 %d", sizeof(char)); //显示字符数据类型的大小
	printf("\n浮动数据类型的大小为 %d\n", sizeof(float)); //显示浮动数据类型的大小。
	printf("%d\n", sizeof(arr1));
	printf("%d\n", sizeof(arr1[2]));
	

	printf("%d\n", sizeof(arr1)/sizeof(arr1[0]));//计算数组内元素的个数



	printf("%d\n", sizeof(crr1));//字符串组的大小
	printf("%d\n", sizeof(crr3));
	printf("%d\n", sizeof(crr4));
]

对比可以查看输出结果:

可以看出,sizeof可以表达已经存储的数据的大,也可以精确到数组里面的一个元素
因此可以用来作为 表达数组元素个数的表达式 如上图单独空出来的代码

--------------------👉strlen函数

与sizeof的泛用性不同(毕竟一个是关键字,一个是库函数),适用于计算字符串的大小
如 ‘1’ ‘a’ 这种都可以称为一个字符
‘hello world’ 这样的一串字符称为字符串,字符串结束的标志为 ‘/0’,具体理解可以参考如下代码

int main()
{
	char crr1[] = { 1,2,3,4,5,'}';//'char'是字符串结束的标志,不算长度,但是占内存一个字节 [
	] crr2='1' , { '2','3','4','}';char[14
	] crr3="hello world"} ; { char []
	= crr4"hello world"} ; { char []
	= crr5"hello w}orld"; printf { ( "%d\n",
	strlen()) ;//字符串长度为5,若没有结尾的printf 字符串的长度为随机值crr1("%d\n",   sizeof
	()); //对比sizeof 计算的是存储数据的大小,与printf无关,输出结果为'6',且如果输入(,输入结果变为'6'"%d\n"crr1,strlen(  
)


	);//同上printf ("%d\n"crr2,sizeof()
	);//hello world 占11个字符printf ("%d\n"crr2,sizeof(

)

	);//输出结果为14,说明sizeof计算的是数据存储在内存的大小,与内容无关printf ("%d\n"crr3,strlen()
	);//输出结果为11,对比说明starlen计算的仅是字符串长度printf ("%d\n"crr3,strlen()
	);//同理,输出结果11  printf不算入字符串长度内( "%d\n",crr4sizeof())
	;//输出结果为12,末尾自动补了//’printf'占一个内存,如果格子满了,则不会自动补("%d\n", strlen(crr4));//'printf'是字符串的结尾

	(

	"%d\n",sizeof( ))crr5;return0 ;
	}数据类型 [+++]crr5[+++][+++][+++]

	[+++] [+++][+++]
[+++]

对比输出图,对starlen的作用可以有更直观的理解

总结

sizeof是关键字,用于计算出的是数据所占内存的大小,可用于一个[+++]或者表达式。
即使数据为空,占了内存也会计入在内

可用sizeof计算数字的元素个数,用于解决基础数学问题

strlen 是c语言的库函数,仅用于计算字符串的长度,’\0’是字符串结束的标志
与内存无关


新手写文,记录所学,如有帮助,可以走波三连♥♥♥,一起进步
如有错误,还请大佬指√,万分感谢

)
File: /www/wwwroot/outofmemory.cn/tmp/route_read.php, Line: 126, InsideLink()
File: /www/wwwroot/outofmemory.cn/tmp/index.inc.php, Line: 165, include(/www/wwwroot/outofmemory.cn/tmp/route_read.php)
File: /www/wwwroot/outofmemory.cn/index.php, Line: 30, include(/www/wwwroot/outofmemory.cn/tmp/index.inc.php)
Error[8]: Undefined offset: 338, File: /www/wwwroot/outofmemory.cn/tmp/plugin_ss_superseo_model_superseo.php, Line: 121
File: /www/wwwroot/outofmemory.cn/tmp/plugin_ss_superseo_model_superseo.php, Line: 473, decode(

初学入门 纯新手

粗略认识c语言 sizeof关键字 和 starlen 函数 的区别 -------------👉sizeof

sizeof 是一个关键字,而不是一个函数,可用于一个数据类型或者表达式。

int main()
{
	int arr1[] = { 1,2,3,4,5,6,7,8 };
	char crr1[] = { 1,2,3,4,5 };
	char crr2[] = { '1','2','3','4' };
	char crr3[14] = { "hello world" };
	char crr4[] = { "hello world" };

	//sizeof可用一种数据类型 一个表达式
	printf("int数据类型的大小为 %d", sizeof(int)); //显示整数数据类型的大小。
	printf("\n字符数据类型的大小为 %d", sizeof(char)); //显示字符数据类型的大小
	printf("\n浮动数据类型的大小为 %d\n", sizeof(float)); //显示浮动数据类型的大小。
	printf("%d\n", sizeof(arr1));
	printf("%d\n", sizeof(arr1[2]));
	

	printf("%d\n", sizeof(arr1)/sizeof(arr1[0]));//计算数组内元素的个数



	printf("%d\n", sizeof(crr1));//字符串组的大小
	printf("%d\n", sizeof(crr3));
	printf("%d\n", sizeof(crr4));
]

对比可以查看输出结果:

可以看出,sizeof可以表达已经存储的数据的大,也可以精确到数组里面的一个元素
因此可以用来作为 表达数组元素个数的表达式 如上图单独空出来的代码

--------------------👉strlen函数

与sizeof的泛用性不同(毕竟一个是关键字,一个是库函数),适用于计算字符串的大小
如 ‘1’ ‘a’ 这种都可以称为一个字符
‘hello world’ 这样的一串字符称为字符串,字符串结束的标志为 ‘/0’,具体理解可以参考如下代码

int main()
{
	char crr1[] = { 1,2,3,4,5,'}';//'char'是字符串结束的标志,不算长度,但是占内存一个字节 [
	] crr2='1' , { '2','3','4','}';char[14
	] crr3="hello world"} ; { char []
	= crr4"hello world"} ; { char []
	= crr5"hello w}orld"; printf { ( "%d\n",
	strlen()) ;//字符串长度为5,若没有结尾的printf 字符串的长度为随机值crr1("%d\n",   sizeof
	()); //对比sizeof 计算的是存储数据的大小,与printf无关,输出结果为'6',且如果输入(,输入结果变为'6'"%d\n"crr1,strlen(  
)


	);//同上printf ("%d\n"crr2,sizeof()
	);//hello world 占11个字符printf ("%d\n"crr2,sizeof(

)

	);//输出结果为14,说明sizeof计算的是数据存储在内存的大小,与内容无关printf ("%d\n"crr3,strlen()
	);//输出结果为11,对比说明starlen计算的仅是字符串长度printf ("%d\n"crr3,strlen()
	);//同理,输出结果11  printf不算入字符串长度内( "%d\n",crr4sizeof())
	;//输出结果为12,末尾自动补了//’printf'占一个内存,如果格子满了,则不会自动补("%d\n", strlen(crr4));//'printf'是字符串的结尾

	(

	"%d\n",sizeof( ))crr5;return0 ;
	}数据类型 crr5[+++][+++][+++]

	[+++] [+++][+++]
[+++]

对比输出图,对starlen的作用可以有更直观的理解

总结

sizeof是关键字,用于计算出的是数据所占内存的大小,可用于一个[+++]或者表达式。
即使数据为空,占了内存也会计入在内

可用sizeof计算数字的元素个数,用于解决基础数学问题

strlen 是c语言的库函数,仅用于计算字符串的长度,’\0’是字符串结束的标志
与内存无关


新手写文,记录所学,如有帮助,可以走波三连♥♥♥,一起进步
如有错误,还请大佬指√,万分感谢

)
File: /www/wwwroot/outofmemory.cn/tmp/route_read.php, Line: 126, InsideLink()
File: /www/wwwroot/outofmemory.cn/tmp/index.inc.php, Line: 165, include(/www/wwwroot/outofmemory.cn/tmp/route_read.php)
File: /www/wwwroot/outofmemory.cn/index.php, Line: 30, include(/www/wwwroot/outofmemory.cn/tmp/index.inc.php)
Error[8]: Undefined offset: 339, File: /www/wwwroot/outofmemory.cn/tmp/plugin_ss_superseo_model_superseo.php, Line: 121
File: /www/wwwroot/outofmemory.cn/tmp/plugin_ss_superseo_model_superseo.php, Line: 473, decode(

初学入门 纯新手

粗略认识c语言 sizeof关键字 和 starlen 函数 的区别 -------------👉sizeof

sizeof 是一个关键字,而不是一个函数,可用于一个数据类型或者表达式。

int main()
{
	int arr1[] = { 1,2,3,4,5,6,7,8 };
	char crr1[] = { 1,2,3,4,5 };
	char crr2[] = { '1','2','3','4' };
	char crr3[14] = { "hello world" };
	char crr4[] = { "hello world" };

	//sizeof可用一种数据类型 一个表达式
	printf("int数据类型的大小为 %d", sizeof(int)); //显示整数数据类型的大小。
	printf("\n字符数据类型的大小为 %d", sizeof(char)); //显示字符数据类型的大小
	printf("\n浮动数据类型的大小为 %d\n", sizeof(float)); //显示浮动数据类型的大小。
	printf("%d\n", sizeof(arr1));
	printf("%d\n", sizeof(arr1[2]));
	

	printf("%d\n", sizeof(arr1)/sizeof(arr1[0]));//计算数组内元素的个数



	printf("%d\n", sizeof(crr1));//字符串组的大小
	printf("%d\n", sizeof(crr3));
	printf("%d\n", sizeof(crr4));
]

对比可以查看输出结果:

可以看出,sizeof可以表达已经存储的数据的大,也可以精确到数组里面的一个元素
因此可以用来作为 表达数组元素个数的表达式 如上图单独空出来的代码

--------------------👉strlen函数

与sizeof的泛用性不同(毕竟一个是关键字,一个是库函数),适用于计算字符串的大小
如 ‘1’ ‘a’ 这种都可以称为一个字符
‘hello world’ 这样的一串字符称为字符串,字符串结束的标志为 ‘/0’,具体理解可以参考如下代码

int main()
{
	char crr1[] = { 1,2,3,4,5,'}';//'char'是字符串结束的标志,不算长度,但是占内存一个字节 [
	] crr2='1' , { '2','3','4','}';char[14
	] crr3="hello world"} ; { char []
	= crr4"hello world"} ; { char []
	= crr5"hello w}orld"; printf { ( "%d\n",
	strlen()) ;//字符串长度为5,若没有结尾的printf 字符串的长度为随机值crr1("%d\n",   sizeof
	()); //对比sizeof 计算的是存储数据的大小,与printf无关,输出结果为'6',且如果输入(,输入结果变为'6'"%d\n"crr1,strlen(  
)


	);//同上printf ("%d\n"crr2,sizeof()
	);//hello world 占11个字符printf ("%d\n"crr2,sizeof(

)

	);//输出结果为14,说明sizeof计算的是数据存储在内存的大小,与内容无关printf ("%d\n"crr3,strlen()
	);//输出结果为11,对比说明starlen计算的仅是字符串长度printf ("%d\n"crr3,strlen()
	);//同理,输出结果11  printf不算入字符串长度内( "%d\n",crr4sizeof())
	;//输出结果为12,末尾自动补了//’printf'占一个内存,如果格子满了,则不会自动补("%d\n", strlen(crr4));//'printf'是字符串的结尾

	(

	"%d\n",sizeof( ))crr5;return0 ;
	}数据类型 crr5[+++][+++]

	[+++] [+++][+++]
[+++]

对比输出图,对starlen的作用可以有更直观的理解

总结

sizeof是关键字,用于计算出的是数据所占内存的大小,可用于一个[+++]或者表达式。
即使数据为空,占了内存也会计入在内

可用sizeof计算数字的元素个数,用于解决基础数学问题

strlen 是c语言的库函数,仅用于计算字符串的长度,’\0’是字符串结束的标志
与内存无关


新手写文,记录所学,如有帮助,可以走波三连♥♥♥,一起进步
如有错误,还请大佬指√,万分感谢

)
File: /www/wwwroot/outofmemory.cn/tmp/route_read.php, Line: 126, InsideLink()
File: /www/wwwroot/outofmemory.cn/tmp/index.inc.php, Line: 165, include(/www/wwwroot/outofmemory.cn/tmp/route_read.php)
File: /www/wwwroot/outofmemory.cn/index.php, Line: 30, include(/www/wwwroot/outofmemory.cn/tmp/index.inc.php)
Error[8]: Undefined offset: 340, File: /www/wwwroot/outofmemory.cn/tmp/plugin_ss_superseo_model_superseo.php, Line: 121
File: /www/wwwroot/outofmemory.cn/tmp/plugin_ss_superseo_model_superseo.php, Line: 473, decode(

初学入门 纯新手

粗略认识c语言 sizeof关键字 和 starlen 函数 的区别 -------------👉sizeof

sizeof 是一个关键字,而不是一个函数,可用于一个数据类型或者表达式。

int main()
{
	int arr1[] = { 1,2,3,4,5,6,7,8 };
	char crr1[] = { 1,2,3,4,5 };
	char crr2[] = { '1','2','3','4' };
	char crr3[14] = { "hello world" };
	char crr4[] = { "hello world" };

	//sizeof可用一种数据类型 一个表达式
	printf("int数据类型的大小为 %d", sizeof(int)); //显示整数数据类型的大小。
	printf("\n字符数据类型的大小为 %d", sizeof(char)); //显示字符数据类型的大小
	printf("\n浮动数据类型的大小为 %d\n", sizeof(float)); //显示浮动数据类型的大小。
	printf("%d\n", sizeof(arr1));
	printf("%d\n", sizeof(arr1[2]));
	

	printf("%d\n", sizeof(arr1)/sizeof(arr1[0]));//计算数组内元素的个数



	printf("%d\n", sizeof(crr1));//字符串组的大小
	printf("%d\n", sizeof(crr3));
	printf("%d\n", sizeof(crr4));
]

对比可以查看输出结果:

可以看出,sizeof可以表达已经存储的数据的大,也可以精确到数组里面的一个元素
因此可以用来作为 表达数组元素个数的表达式 如上图单独空出来的代码

--------------------👉strlen函数

与sizeof的泛用性不同(毕竟一个是关键字,一个是库函数),适用于计算字符串的大小
如 ‘1’ ‘a’ 这种都可以称为一个字符
‘hello world’ 这样的一串字符称为字符串,字符串结束的标志为 ‘/0’,具体理解可以参考如下代码

int main()
{
	char crr1[] = { 1,2,3,4,5,'}';//'char'是字符串结束的标志,不算长度,但是占内存一个字节 [
	] crr2='1' , { '2','3','4','}';char[14
	] crr3="hello world"} ; { char []
	= crr4"hello world"} ; { char []
	= crr5"hello w}orld"; printf { ( "%d\n",
	strlen()) ;//字符串长度为5,若没有结尾的printf 字符串的长度为随机值crr1("%d\n",   sizeof
	()); //对比sizeof 计算的是存储数据的大小,与printf无关,输出结果为'6',且如果输入(,输入结果变为'6'"%d\n"crr1,strlen(  
)


	);//同上printf ("%d\n"crr2,sizeof()
	);//hello world 占11个字符printf ("%d\n"crr2,sizeof(

)

	);//输出结果为14,说明sizeof计算的是数据存储在内存的大小,与内容无关printf ("%d\n"crr3,strlen()
	);//输出结果为11,对比说明starlen计算的仅是字符串长度printf ("%d\n"crr3,strlen()
	);//同理,输出结果11  printf不算入字符串长度内( "%d\n",crr4sizeof())
	;//输出结果为12,末尾自动补了//’printf'占一个内存,如果格子满了,则不会自动补("%d\n", strlen(crr4));//'printf'是字符串的结尾

	(

	"%d\n",sizeof( ))crr5;return0 ;
	}数据类型 crr5[+++]

	[+++] [+++][+++]
[+++]

对比输出图,对starlen的作用可以有更直观的理解

总结

sizeof是关键字,用于计算出的是数据所占内存的大小,可用于一个[+++]或者表达式。
即使数据为空,占了内存也会计入在内

可用sizeof计算数字的元素个数,用于解决基础数学问题

strlen 是c语言的库函数,仅用于计算字符串的长度,’\0’是字符串结束的标志
与内存无关


新手写文,记录所学,如有帮助,可以走波三连♥♥♥,一起进步
如有错误,还请大佬指√,万分感谢

)
File: /www/wwwroot/outofmemory.cn/tmp/route_read.php, Line: 126, InsideLink()
File: /www/wwwroot/outofmemory.cn/tmp/index.inc.php, Line: 165, include(/www/wwwroot/outofmemory.cn/tmp/route_read.php)
File: /www/wwwroot/outofmemory.cn/index.php, Line: 30, include(/www/wwwroot/outofmemory.cn/tmp/index.inc.php)
Error[8]: Undefined offset: 341, File: /www/wwwroot/outofmemory.cn/tmp/plugin_ss_superseo_model_superseo.php, Line: 121
File: /www/wwwroot/outofmemory.cn/tmp/plugin_ss_superseo_model_superseo.php, Line: 473, decode(

初学入门 纯新手

粗略认识c语言 sizeof关键字 和 starlen 函数 的区别 -------------👉sizeof

sizeof 是一个关键字,而不是一个函数,可用于一个数据类型或者表达式。

int main()
{
	int arr1[] = { 1,2,3,4,5,6,7,8 };
	char crr1[] = { 1,2,3,4,5 };
	char crr2[] = { '1','2','3','4' };
	char crr3[14] = { "hello world" };
	char crr4[] = { "hello world" };

	//sizeof可用一种数据类型 一个表达式
	printf("int数据类型的大小为 %d", sizeof(int)); //显示整数数据类型的大小。
	printf("\n字符数据类型的大小为 %d", sizeof(char)); //显示字符数据类型的大小
	printf("\n浮动数据类型的大小为 %d\n", sizeof(float)); //显示浮动数据类型的大小。
	printf("%d\n", sizeof(arr1));
	printf("%d\n", sizeof(arr1[2]));
	

	printf("%d\n", sizeof(arr1)/sizeof(arr1[0]));//计算数组内元素的个数



	printf("%d\n", sizeof(crr1));//字符串组的大小
	printf("%d\n", sizeof(crr3));
	printf("%d\n", sizeof(crr4));
]

对比可以查看输出结果:

可以看出,sizeof可以表达已经存储的数据的大,也可以精确到数组里面的一个元素
因此可以用来作为 表达数组元素个数的表达式 如上图单独空出来的代码

--------------------👉strlen函数

与sizeof的泛用性不同(毕竟一个是关键字,一个是库函数),适用于计算字符串的大小
如 ‘1’ ‘a’ 这种都可以称为一个字符
‘hello world’ 这样的一串字符称为字符串,字符串结束的标志为 ‘/0’,具体理解可以参考如下代码

int main()
{
	char crr1[] = { 1,2,3,4,5,'}';//'char'是字符串结束的标志,不算长度,但是占内存一个字节 [
	] crr2='1' , { '2','3','4','}';char[14
	] crr3="hello world"} ; { char []
	= crr4"hello world"} ; { char []
	= crr5"hello w}orld"; printf { ( "%d\n",
	strlen()) ;//字符串长度为5,若没有结尾的printf 字符串的长度为随机值crr1("%d\n",   sizeof
	()); //对比sizeof 计算的是存储数据的大小,与printf无关,输出结果为'6',且如果输入(,输入结果变为'6'"%d\n"crr1,strlen(  
)


	);//同上printf ("%d\n"crr2,sizeof()
	);//hello world 占11个字符printf ("%d\n"crr2,sizeof(

)

	);//输出结果为14,说明sizeof计算的是数据存储在内存的大小,与内容无关printf ("%d\n"crr3,strlen()
	);//输出结果为11,对比说明starlen计算的仅是字符串长度printf ("%d\n"crr3,strlen()
	);//同理,输出结果11  printf不算入字符串长度内( "%d\n",crr4sizeof())
	;//输出结果为12,末尾自动补了//’printf'占一个内存,如果格子满了,则不会自动补("%d\n", strlen(crr4));//'printf'是字符串的结尾

	(

	"%d\n",sizeof( ))crr5;return0 ;
	}数据类型 crr5

	[+++] [+++][+++]
[+++]

对比输出图,对starlen的作用可以有更直观的理解

总结

sizeof是关键字,用于计算出的是数据所占内存的大小,可用于一个[+++]或者表达式。
即使数据为空,占了内存也会计入在内

可用sizeof计算数字的元素个数,用于解决基础数学问题

strlen 是c语言的库函数,仅用于计算字符串的长度,’\0’是字符串结束的标志
与内存无关


新手写文,记录所学,如有帮助,可以走波三连♥♥♥,一起进步
如有错误,还请大佬指√,万分感谢

)
File: /www/wwwroot/outofmemory.cn/tmp/route_read.php, Line: 126, InsideLink()
File: /www/wwwroot/outofmemory.cn/tmp/index.inc.php, Line: 165, include(/www/wwwroot/outofmemory.cn/tmp/route_read.php)
File: /www/wwwroot/outofmemory.cn/index.php, Line: 30, include(/www/wwwroot/outofmemory.cn/tmp/index.inc.php)
Error[8]: Undefined offset: 342, File: /www/wwwroot/outofmemory.cn/tmp/plugin_ss_superseo_model_superseo.php, Line: 121
File: /www/wwwroot/outofmemory.cn/tmp/plugin_ss_superseo_model_superseo.php, Line: 473, decode(

初学入门 纯新手

粗略认识c语言 sizeof关键字 和 starlen 函数 的区别 -------------👉sizeof

sizeof 是一个关键字,而不是一个函数,可用于一个数据类型或者表达式。

int main()
{
	int arr1[] = { 1,2,3,4,5,6,7,8 };
	char crr1[] = { 1,2,3,4,5 };
	char crr2[] = { '1','2','3','4' };
	char crr3[14] = { "hello world" };
	char crr4[] = { "hello world" };

	//sizeof可用一种数据类型 一个表达式
	printf("int数据类型的大小为 %d", sizeof(int)); //显示整数数据类型的大小。
	printf("\n字符数据类型的大小为 %d", sizeof(char)); //显示字符数据类型的大小
	printf("\n浮动数据类型的大小为 %d\n", sizeof(float)); //显示浮动数据类型的大小。
	printf("%d\n", sizeof(arr1));
	printf("%d\n", sizeof(arr1[2]));
	

	printf("%d\n", sizeof(arr1)/sizeof(arr1[0]));//计算数组内元素的个数



	printf("%d\n", sizeof(crr1));//字符串组的大小
	printf("%d\n", sizeof(crr3));
	printf("%d\n", sizeof(crr4));
]

对比可以查看输出结果:

可以看出,sizeof可以表达已经存储的数据的大,也可以精确到数组里面的一个元素
因此可以用来作为 表达数组元素个数的表达式 如上图单独空出来的代码

--------------------👉strlen函数

与sizeof的泛用性不同(毕竟一个是关键字,一个是库函数),适用于计算字符串的大小
如 ‘1’ ‘a’ 这种都可以称为一个字符
‘hello world’ 这样的一串字符称为字符串,字符串结束的标志为 ‘/0’,具体理解可以参考如下代码

int main()
{
	char crr1[] = { 1,2,3,4,5,'}';//'char'是字符串结束的标志,不算长度,但是占内存一个字节 [
	] crr2='1' , { '2','3','4','}';char[14
	] crr3="hello world"} ; { char []
	= crr4"hello world"} ; { char []
	= crr5"hello w}orld"; printf { ( "%d\n",
	strlen()) ;//字符串长度为5,若没有结尾的printf 字符串的长度为随机值crr1("%d\n",   sizeof
	()); //对比sizeof 计算的是存储数据的大小,与printf无关,输出结果为'6',且如果输入(,输入结果变为'6'"%d\n"crr1,strlen(  
)


	);//同上printf ("%d\n"crr2,sizeof()
	);//hello world 占11个字符printf ("%d\n"crr2,sizeof(

)

	);//输出结果为14,说明sizeof计算的是数据存储在内存的大小,与内容无关printf ("%d\n"crr3,strlen()
	);//输出结果为11,对比说明starlen计算的仅是字符串长度printf ("%d\n"crr3,strlen()
	);//同理,输出结果11  printf不算入字符串长度内( "%d\n",crr4sizeof())
	;//输出结果为12,末尾自动补了//’printf'占一个内存,如果格子满了,则不会自动补("%d\n", strlen(crr4));//'printf'是字符串的结尾

	(

	"%d\n",sizeof( ))crr5;return0 ;
	}数据类型 crr5

	 [+++][+++]
[+++]

对比输出图,对starlen的作用可以有更直观的理解

总结

sizeof是关键字,用于计算出的是数据所占内存的大小,可用于一个[+++]或者表达式。
即使数据为空,占了内存也会计入在内

可用sizeof计算数字的元素个数,用于解决基础数学问题

strlen 是c语言的库函数,仅用于计算字符串的长度,’\0’是字符串结束的标志
与内存无关


新手写文,记录所学,如有帮助,可以走波三连♥♥♥,一起进步
如有错误,还请大佬指√,万分感谢

)
File: /www/wwwroot/outofmemory.cn/tmp/route_read.php, Line: 126, InsideLink()
File: /www/wwwroot/outofmemory.cn/tmp/index.inc.php, Line: 165, include(/www/wwwroot/outofmemory.cn/tmp/route_read.php)
File: /www/wwwroot/outofmemory.cn/index.php, Line: 30, include(/www/wwwroot/outofmemory.cn/tmp/index.inc.php)
Error[8]: Undefined offset: 343, File: /www/wwwroot/outofmemory.cn/tmp/plugin_ss_superseo_model_superseo.php, Line: 121
File: /www/wwwroot/outofmemory.cn/tmp/plugin_ss_superseo_model_superseo.php, Line: 473, decode(

初学入门 纯新手

粗略认识c语言 sizeof关键字 和 starlen 函数 的区别 -------------👉sizeof

sizeof 是一个关键字,而不是一个函数,可用于一个数据类型或者表达式。

int main()
{
	int arr1[] = { 1,2,3,4,5,6,7,8 };
	char crr1[] = { 1,2,3,4,5 };
	char crr2[] = { '1','2','3','4' };
	char crr3[14] = { "hello world" };
	char crr4[] = { "hello world" };

	//sizeof可用一种数据类型 一个表达式
	printf("int数据类型的大小为 %d", sizeof(int)); //显示整数数据类型的大小。
	printf("\n字符数据类型的大小为 %d", sizeof(char)); //显示字符数据类型的大小
	printf("\n浮动数据类型的大小为 %d\n", sizeof(float)); //显示浮动数据类型的大小。
	printf("%d\n", sizeof(arr1));
	printf("%d\n", sizeof(arr1[2]));
	

	printf("%d\n", sizeof(arr1)/sizeof(arr1[0]));//计算数组内元素的个数



	printf("%d\n", sizeof(crr1));//字符串组的大小
	printf("%d\n", sizeof(crr3));
	printf("%d\n", sizeof(crr4));
]

对比可以查看输出结果:

可以看出,sizeof可以表达已经存储的数据的大,也可以精确到数组里面的一个元素
因此可以用来作为 表达数组元素个数的表达式 如上图单独空出来的代码

--------------------👉strlen函数

与sizeof的泛用性不同(毕竟一个是关键字,一个是库函数),适用于计算字符串的大小
如 ‘1’ ‘a’ 这种都可以称为一个字符
‘hello world’ 这样的一串字符称为字符串,字符串结束的标志为 ‘/0’,具体理解可以参考如下代码

int main()
{
	char crr1[] = { 1,2,3,4,5,'}';//'char'是字符串结束的标志,不算长度,但是占内存一个字节 [
	] crr2='1' , { '2','3','4','}';char[14
	] crr3="hello world"} ; { char []
	= crr4"hello world"} ; { char []
	= crr5"hello w}orld"; printf { ( "%d\n",
	strlen()) ;//字符串长度为5,若没有结尾的printf 字符串的长度为随机值crr1("%d\n",   sizeof
	()); //对比sizeof 计算的是存储数据的大小,与printf无关,输出结果为'6',且如果输入(,输入结果变为'6'"%d\n"crr1,strlen(  
)


	);//同上printf ("%d\n"crr2,sizeof()
	);//hello world 占11个字符printf ("%d\n"crr2,sizeof(

)

	);//输出结果为14,说明sizeof计算的是数据存储在内存的大小,与内容无关printf ("%d\n"crr3,strlen()
	);//输出结果为11,对比说明starlen计算的仅是字符串长度printf ("%d\n"crr3,strlen()
	);//同理,输出结果11  printf不算入字符串长度内( "%d\n",crr4sizeof())
	;//输出结果为12,末尾自动补了//’printf'占一个内存,如果格子满了,则不会自动补("%d\n", strlen(crr4));//'printf'是字符串的结尾

	(

	"%d\n",sizeof( ))crr5;return0 ;
	}数据类型 crr5

	 [+++]
[+++]

对比输出图,对starlen的作用可以有更直观的理解

总结

sizeof是关键字,用于计算出的是数据所占内存的大小,可用于一个[+++]或者表达式。
即使数据为空,占了内存也会计入在内

可用sizeof计算数字的元素个数,用于解决基础数学问题

strlen 是c语言的库函数,仅用于计算字符串的长度,’\0’是字符串结束的标志
与内存无关


新手写文,记录所学,如有帮助,可以走波三连♥♥♥,一起进步
如有错误,还请大佬指√,万分感谢

)
File: /www/wwwroot/outofmemory.cn/tmp/route_read.php, Line: 126, InsideLink()
File: /www/wwwroot/outofmemory.cn/tmp/index.inc.php, Line: 165, include(/www/wwwroot/outofmemory.cn/tmp/route_read.php)
File: /www/wwwroot/outofmemory.cn/index.php, Line: 30, include(/www/wwwroot/outofmemory.cn/tmp/index.inc.php)
Error[8]: Undefined offset: 344, File: /www/wwwroot/outofmemory.cn/tmp/plugin_ss_superseo_model_superseo.php, Line: 121
File: /www/wwwroot/outofmemory.cn/tmp/plugin_ss_superseo_model_superseo.php, Line: 473, decode(

初学入门 纯新手

粗略认识c语言 sizeof关键字 和 starlen 函数 的区别 -------------👉sizeof

sizeof 是一个关键字,而不是一个函数,可用于一个数据类型或者表达式。

int main()
{
	int arr1[] = { 1,2,3,4,5,6,7,8 };
	char crr1[] = { 1,2,3,4,5 };
	char crr2[] = { '1','2','3','4' };
	char crr3[14] = { "hello world" };
	char crr4[] = { "hello world" };

	//sizeof可用一种数据类型 一个表达式
	printf("int数据类型的大小为 %d", sizeof(int)); //显示整数数据类型的大小。
	printf("\n字符数据类型的大小为 %d", sizeof(char)); //显示字符数据类型的大小
	printf("\n浮动数据类型的大小为 %d\n", sizeof(float)); //显示浮动数据类型的大小。
	printf("%d\n", sizeof(arr1));
	printf("%d\n", sizeof(arr1[2]));
	

	printf("%d\n", sizeof(arr1)/sizeof(arr1[0]));//计算数组内元素的个数



	printf("%d\n", sizeof(crr1));//字符串组的大小
	printf("%d\n", sizeof(crr3));
	printf("%d\n", sizeof(crr4));
]

对比可以查看输出结果:

可以看出,sizeof可以表达已经存储的数据的大,也可以精确到数组里面的一个元素
因此可以用来作为 表达数组元素个数的表达式 如上图单独空出来的代码

--------------------👉strlen函数

与sizeof的泛用性不同(毕竟一个是关键字,一个是库函数),适用于计算字符串的大小
如 ‘1’ ‘a’ 这种都可以称为一个字符
‘hello world’ 这样的一串字符称为字符串,字符串结束的标志为 ‘/0’,具体理解可以参考如下代码

int main()
{
	char crr1[] = { 1,2,3,4,5,'}';//'char'是字符串结束的标志,不算长度,但是占内存一个字节 [
	] crr2='1' , { '2','3','4','}';char[14
	] crr3="hello world"} ; { char []
	= crr4"hello world"} ; { char []
	= crr5"hello w}orld"; printf { ( "%d\n",
	strlen()) ;//字符串长度为5,若没有结尾的printf 字符串的长度为随机值crr1("%d\n",   sizeof
	()); //对比sizeof 计算的是存储数据的大小,与printf无关,输出结果为'6',且如果输入(,输入结果变为'6'"%d\n"crr1,strlen(  
)


	);//同上printf ("%d\n"crr2,sizeof()
	);//hello world 占11个字符printf ("%d\n"crr2,sizeof(

)

	);//输出结果为14,说明sizeof计算的是数据存储在内存的大小,与内容无关printf ("%d\n"crr3,strlen()
	);//输出结果为11,对比说明starlen计算的仅是字符串长度printf ("%d\n"crr3,strlen()
	);//同理,输出结果11  printf不算入字符串长度内( "%d\n",crr4sizeof())
	;//输出结果为12,末尾自动补了//’printf'占一个内存,如果格子满了,则不会自动补("%d\n", strlen(crr4));//'printf'是字符串的结尾

	(

	"%d\n",sizeof( ))crr5;return0 ;
	}数据类型 crr5

	 
[+++]

对比输出图,对starlen的作用可以有更直观的理解

总结

sizeof是关键字,用于计算出的是数据所占内存的大小,可用于一个[+++]或者表达式。
即使数据为空,占了内存也会计入在内

可用sizeof计算数字的元素个数,用于解决基础数学问题

strlen 是c语言的库函数,仅用于计算字符串的长度,’\0’是字符串结束的标志
与内存无关


新手写文,记录所学,如有帮助,可以走波三连♥♥♥,一起进步
如有错误,还请大佬指√,万分感谢

)
File: /www/wwwroot/outofmemory.cn/tmp/route_read.php, Line: 126, InsideLink()
File: /www/wwwroot/outofmemory.cn/tmp/index.inc.php, Line: 165, include(/www/wwwroot/outofmemory.cn/tmp/route_read.php)
File: /www/wwwroot/outofmemory.cn/index.php, Line: 30, include(/www/wwwroot/outofmemory.cn/tmp/index.inc.php)
Error[8]: Undefined offset: 345, File: /www/wwwroot/outofmemory.cn/tmp/plugin_ss_superseo_model_superseo.php, Line: 121
File: /www/wwwroot/outofmemory.cn/tmp/plugin_ss_superseo_model_superseo.php, Line: 473, decode(

初学入门 纯新手

粗略认识c语言 sizeof关键字 和 starlen 函数 的区别 -------------👉sizeof

sizeof 是一个关键字,而不是一个函数,可用于一个数据类型或者表达式。

int main()
{
	int arr1[] = { 1,2,3,4,5,6,7,8 };
	char crr1[] = { 1,2,3,4,5 };
	char crr2[] = { '1','2','3','4' };
	char crr3[14] = { "hello world" };
	char crr4[] = { "hello world" };

	//sizeof可用一种数据类型 一个表达式
	printf("int数据类型的大小为 %d", sizeof(int)); //显示整数数据类型的大小。
	printf("\n字符数据类型的大小为 %d", sizeof(char)); //显示字符数据类型的大小
	printf("\n浮动数据类型的大小为 %d\n", sizeof(float)); //显示浮动数据类型的大小。
	printf("%d\n", sizeof(arr1));
	printf("%d\n", sizeof(arr1[2]));
	

	printf("%d\n", sizeof(arr1)/sizeof(arr1[0]));//计算数组内元素的个数



	printf("%d\n", sizeof(crr1));//字符串组的大小
	printf("%d\n", sizeof(crr3));
	printf("%d\n", sizeof(crr4));
]

对比可以查看输出结果:

可以看出,sizeof可以表达已经存储的数据的大,也可以精确到数组里面的一个元素
因此可以用来作为 表达数组元素个数的表达式 如上图单独空出来的代码

--------------------👉strlen函数

与sizeof的泛用性不同(毕竟一个是关键字,一个是库函数),适用于计算字符串的大小
如 ‘1’ ‘a’ 这种都可以称为一个字符
‘hello world’ 这样的一串字符称为字符串,字符串结束的标志为 ‘/0’,具体理解可以参考如下代码

int main()
{
	char crr1[] = { 1,2,3,4,5,'}';//'char'是字符串结束的标志,不算长度,但是占内存一个字节 [
	] crr2='1' , { '2','3','4','}';char[14
	] crr3="hello world"} ; { char []
	= crr4"hello world"} ; { char []
	= crr5"hello w}orld"; printf { ( "%d\n",
	strlen()) ;//字符串长度为5,若没有结尾的printf 字符串的长度为随机值crr1("%d\n",   sizeof
	()); //对比sizeof 计算的是存储数据的大小,与printf无关,输出结果为'6',且如果输入(,输入结果变为'6'"%d\n"crr1,strlen(  
)


	);//同上printf ("%d\n"crr2,sizeof()
	);//hello world 占11个字符printf ("%d\n"crr2,sizeof(

)

	);//输出结果为14,说明sizeof计算的是数据存储在内存的大小,与内容无关printf ("%d\n"crr3,strlen()
	);//输出结果为11,对比说明starlen计算的仅是字符串长度printf ("%d\n"crr3,strlen()
	);//同理,输出结果11  printf不算入字符串长度内( "%d\n",crr4sizeof())
	;//输出结果为12,末尾自动补了//’printf'占一个内存,如果格子满了,则不会自动补("%d\n", strlen(crr4));//'printf'是字符串的结尾

	(

	"%d\n",sizeof( ))crr5;return0 ;
	}数据类型 crr5

	 

对比输出图,对starlen的作用可以有更直观的理解

总结

sizeof是关键字,用于计算出的是数据所占内存的大小,可用于一个[+++]或者表达式。
即使数据为空,占了内存也会计入在内

可用sizeof计算数字的元素个数,用于解决基础数学问题

strlen 是c语言的库函数,仅用于计算字符串的长度,’\0’是字符串结束的标志
与内存无关


新手写文,记录所学,如有帮助,可以走波三连♥♥♥,一起进步
如有错误,还请大佬指√,万分感谢

)
File: /www/wwwroot/outofmemory.cn/tmp/route_read.php, Line: 126, InsideLink()
File: /www/wwwroot/outofmemory.cn/tmp/index.inc.php, Line: 165, include(/www/wwwroot/outofmemory.cn/tmp/route_read.php)
File: /www/wwwroot/outofmemory.cn/index.php, Line: 30, include(/www/wwwroot/outofmemory.cn/tmp/index.inc.php)
初始C语言,strlen函数和sizeof关键字的使用_C_内存溢出

初始C语言,strlen函数和sizeof关键字的使用

初始C语言,strlen函数和sizeof关键字的使用,第1张

初学入门 纯新手

粗略认识c语言 sizeof关键字 和 starlen 函数 的区别 -------------👉sizeof

sizeof 是一个关键字,而不是一个函数,可用于一个数据类型或者表达式。

int main()
{
	int arr1[] = { 1,2,3,4,5,6,7,8 };
	char crr1[] = { 1,2,3,4,5 };
	char crr2[] = { '1','2','3','4' };
	char crr3[14] = { "hello world" };
	char crr4[] = { "hello world" };

	//sizeof可用一种数据类型 一个表达式
	printf("int数据类型的大小为 %d", sizeof(int)); //显示整数数据类型的大小。
	printf("\n字符数据类型的大小为 %d", sizeof(char)); //显示字符数据类型的大小
	printf("\n浮动数据类型的大小为 %d\n", sizeof(float)); //显示浮动数据类型的大小。
	printf("%d\n", sizeof(arr1));
	printf("%d\n", sizeof(arr1[2]));
	

	printf("%d\n", sizeof(arr1)/sizeof(arr1[0]));//计算数组内元素的个数



	printf("%d\n", sizeof(crr1));//字符串组的大小
	printf("%d\n", sizeof(crr3));
	printf("%d\n", sizeof(crr4));
]

对比可以查看输出结果:

可以看出,sizeof可以表达已经存储的数据的大,也可以精确到数组里面的一个元素
因此可以用来作为 表达数组元素个数的表达式 如上图单独空出来的代码

--------------------👉strlen函数

与sizeof的泛用性不同(毕竟一个是关键字,一个是库函数),适用于计算字符串的大小
如 ‘1’ ‘a’ 这种都可以称为一个字符
‘hello world’ 这样的一串字符称为字符串,字符串结束的标志为 ‘/0’,具体理解可以参考如下代码

int main()
{
	char crr1[] = { 1,2,3,4,5,'}';//'char'是字符串结束的标志,不算长度,但是占内存一个字节 [
	] crr2='1' , { '2','3','4','}';char[14
	] crr3="hello world"} ; { char []
	= crr4"hello world"} ; { char []
	= crr5"hello w}orld"; printf { ( "%d\n",
	strlen()) ;//字符串长度为5,若没有结尾的printf 字符串的长度为随机值crr1("%d\n",   sizeof
	()); //对比sizeof 计算的是存储数据的大小,与printf无关,输出结果为'6',且如果输入(,输入结果变为'6'"%d\n"crr1,strlen(  
)


	);//同上printf ("%d\n"crr2,sizeof()
	);//hello world 占11个字符printf ("%d\n"crr2,sizeof(

)

	);//输出结果为14,说明sizeof计算的是数据存储在内存的大小,与内容无关printf ("%d\n"crr3,strlen()
	);//输出结果为11,对比说明starlen计算的仅是字符串长度printf ("%d\n"crr3,strlen()
	);//同理,输出结果11  printf不算入字符串长度内( "%d\n",crr4sizeof())
	;//输出结果为12,末尾自动补了//’printf'占一个内存,如果格子满了,则不会自动补("%d\n", strlen(crr4));//'printf'是字符串的结尾

	(

	"%d\n",sizeof( ))crr5;return0 ;
	}数据类型 crr5

	 

对比输出图,对starlen的作用可以有更直观的理解

总结

sizeof是关键字,用于计算出的是数据所占内存的大小,可用于一个或者表达式。
即使数据为空,占了内存也会计入在内

可用sizeof计算数字的元素个数,用于解决基础数学问题

strlen 是c语言的库函数,仅用于计算字符串的长度,’\0’是字符串结束的标志
与内存无关


新手写文,记录所学,如有帮助,可以走波三连♥♥♥,一起进步
如有错误,还请大佬指√,万分感谢

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/707420.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-24
下一篇 2022-04-24

发表评论

登录后才能评论

评论列表(0条)

保存