首页 > 科技 >

💻 sizeof与strlen的区别及例题解析 💡

发布时间:2025-03-25 07:05:35来源:网易编辑:鲁清婵

在编程中,`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)`仅计算有效字符数。

掌握这两者的区别,能帮助你更高效地编写代码!🚀

免责声明:本文为转载,非本网原创内容,不代表本网观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。