strlen和sizeof有何本质不同?
- 内容介绍
- 文章标签
- 相关推荐
本文共计185个文字,预计阅读时间需要1分钟。
1. `strlen` 和 `sizeof` 没有任何关联。
2.`strlen` 是求字符串长度,遇到\0停止,是求\0之前字符串的长度,库函数使用时需要引用头文件。
3.`sizeof` 是求字符所占空间大小,操作符,单位是字节。
1.strlen和sizeof没有什么关联。
2.strlen是求字符串长度的大小遇到"\0"停止,是求”\0“之前的字符串长度,库函数使用得用引头文件。
3.sizeof是求字符所占空间大小,操作符,单位是字节。
例子:
#include<stdio.h>
int main(){
char arr1[]= "abcdef";
char arr2[]={'a','b','c','d','e','f'};
printf("%d\n",sizeof(arr1));//7
printf("%d\n",strlen(arr1));//6
printf("%d\n",sizeof(arr2));//6
printf("%d\n",strlen(arr2));//任意数字
return 0;
}
本文共计185个文字,预计阅读时间需要1分钟。
1. `strlen` 和 `sizeof` 没有任何关联。
2.`strlen` 是求字符串长度,遇到\0停止,是求\0之前字符串的长度,库函数使用时需要引用头文件。
3.`sizeof` 是求字符所占空间大小,操作符,单位是字节。
1.strlen和sizeof没有什么关联。
2.strlen是求字符串长度的大小遇到"\0"停止,是求”\0“之前的字符串长度,库函数使用得用引头文件。
3.sizeof是求字符所占空间大小,操作符,单位是字节。
例子:
#include<stdio.h>
int main(){
char arr1[]= "abcdef";
char arr2[]={'a','b','c','d','e','f'};
printf("%d\n",sizeof(arr1));//7
printf("%d\n",strlen(arr1));//6
printf("%d\n",sizeof(arr2));//6
printf("%d\n",strlen(arr2));//任意数字
return 0;
}

