💻 sizeof与strlen的区别及例题解析 💡
在编程中,`sizeof`和`strlen`是两个常用的函数(或运算符),但它们的作用却截然不同。🧐
首先,`sizeof`是一个运算符,用于计算数据类型或变量在内存中的占用字节数。例如:`sizeof(int)`返回的是整型变量所占的内存大小,通常为4字节。而`strlen`则是C语言中的库函数,专门用来计算字符串的实际长度,即从字符串开头到'\0'(空字符)之前的所有字符数量。比如,`strlen("hello")`会返回5,因为"hello"包含5个字符。
那么,它们的区别具体体现在哪里呢?💡
1️⃣ `sizeof`针对的是数据类型或变量的存储空间大小;
2️⃣ `strlen`只统计字符串的有效字符数,忽略末尾的'\0'。
🌟 例题解析
假设我们有以下代码:
```c
char str[] = "abc";
printf("%d\n", sizeof(str)); // 输出 4
printf("%d\n", strlen(str)); // 输出 3
```
为什么结果不同?因为`sizeof(str)`计算了整个数组的大小(包括'\0'),而`strlen(str)`仅计算有效字符数。
掌握这两者的区别,能帮助你更高效地编写代码!🚀
免责声明:本文为转载,非本网原创内容,不代表本网观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。