网站首页

人工智能P2P分享搜索全网发布信息网站地图标签大全

当前位置:诺佳网 > 电子/半导体 > 嵌入式技术 >

【C语言经典面试题】sizeof与strlen有什么区别?

时间:2022-10-05 16:30

人气:

作者:admin

标签: C语言  嵌入式 

导读:这道经典的面试题,我来跟你一起聊一聊。...

C语言经典面试题】sizeof与strlen有什么区别?

这道经典的面试题,我来跟你一起聊一聊。

1 面试原题

**根据你对C语言的掌握情况,请简要描述下 **sizeofstrlen 的区别。

2 知识点剖析

在C语言中,sizeof用于求一个变量或符号的内存空间大小,而strlen一般用于求一个字符串的长度,且这个长度是不包括 '\\0'的。

3 示例代码

为此,我写了一段测试代码:

#include 
#include int main(int argc, const char *argv[])
{
char *p = "123456";
​
printf("sizeof(p) = %d\\n", sizeof(p));
printf("strlen(p) = %d\\n", strlen(p));
​
return 0;
}

很简单,定义了一个字符串,分别使用strlen和sizeof求值;其值为:

image-20220930221317250

通过运行结果,我们可以知道,两者是不一样的。

4 总结

  • strlen一般用于对字符串求长度,且不包括'\\0'字符;
  • sizeof一般用于对变量和符号求内存大小;
  • 两者是有本质区别的;还有一个注意点就是:sizeof对指针求值时,与机器的字长是相关的。
温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信