💻sizeof和strlen区别详解👀
在编程中,`sizeof`和`strlen`是两个经常被混淆的概念,它们看似相似,实则用途大相径庭!下面我们一起来看看它们的区别吧👇
首先,`sizeof`是一个运算符,用于计算数据类型或变量在内存中所占的字节数。例如:
```c
char str[] = "Hello";
printf("%zu\n", sizeof(str)); // 输出 6 (包含字符串末尾的'\0')
```
可以看到,`sizeof`会把字符串中的`\0`也算进去,因为它统计的是内存大小。
而`strlen`是一个函数(需要引入`
```c
printf("%zu\n", strlen(str)); // 输出 5
```
这里只计算了"Hello"这5个字符,忽略了`\0`。
总结一下:
- `sizeof`关注的是内存占用,包括`\0`。
- `strlen`关注的是字符数量,不包括`\0`。
两者虽然都与字符串有关,但适用场景完全不同,大家一定要分清楚哦!💡
免责声明:本答案或内容为用户上传,不代表本网观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。 如遇侵权请及时联系本站删除。