首页 > 代码库 > C语言中sizeof与strlen的区别

C语言中sizeof与strlen的区别

1.sizeof

sizeof为编译时期被替换,不会等到程序运行再来判断,所以sizeof返回的是数组的总字节数

1 #include<stdio.h>
2 
3 int main()
4 {
5         char a[10]={a,b};
6 
7         printf("%d\n",sizeof(a));//10
8 }

 

2.strlen函数包含在string.h头文件中,该函数返回的是数组的长度,数组中有几个元素就返回几

1 #include<stdio.h>
2 #include<string.h>
3 
4 int main()
5 {
6     char a[10]={a,b};
7 
8     printf("%d\n",strlen(a));//2
9 }

 

C语言中sizeof与strlen的区别