0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

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

嵌入式物联网开发 来源:嵌入式物联网开发 作者:嵌入式物联网开发 2022-10-05 16:30 次阅读

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对指针求值时,与机器的字长是相关的。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    5101

    文章

    19262

    浏览量

    309623
  • C语言
    +关注

    关注

    180

    文章

    7618

    浏览量

    138519
  • 嵌入式技术
    +关注

    关注

    10

    文章

    361

    浏览量

    38211
  • 字符串
    +关注

    关注

    1

    文章

    587

    浏览量

    20679
  • sizeof
    +关注

    关注

    0

    文章

    9

    浏览量

    6464
收藏 人收藏

    相关推荐

    私有云和公有云什么区别

    私有云和公有云在多个方面存在显著的区别,以下是具体的比较,主机推荐小编为您整理发布私有云和公有云什么区别
    的头像 发表于 02-20 10:38 172次阅读

    AIGC和AI什么区别

    AIGC是AI在内容生成领域的一个特定应用方向,AI的技术发展为AIGC提供了基础和支撑。那么,AIGC和AI什么区别呢?下面,AI部落小编带您详细了解。
    的头像 发表于 02-20 10:33 167次阅读

    面试题】人工智能工程师高频面试题汇总:概率论与统计篇(题目+答案)

    ​随着人工智能技术的突飞猛进,AI工程师成为了众多求职者梦寐以求的职业。想要拿下这份工作,面试的时候得展示出你不仅技术过硬,还得能解决问题。所以,提前准备一些面试常问的问题,比如概率论与统计知识
    的头像 发表于 01-22 13:00 501次阅读
    【<b class='flag-5'>面试题</b>】人工智能工程师高频<b class='flag-5'>面试题</b>汇总:概率论与统计篇(题目+答案)

    面试题】人工智能工程师高频面试题汇总:机器学习深化篇(题目+答案)

    ,或者深度学习的框架,还有怎么优化模型,这些都是加分项,能有效提高面试通过率。本篇小编整理了一些高频的机器学习深化方面的面试题,这些题目都是从实际面试中总结出来的,非
    的头像 发表于 12-16 13:42 2200次阅读
    【<b class='flag-5'>面试题</b>】人工智能工程师高频<b class='flag-5'>面试题</b>汇总:机器学习深化篇(题目+答案)

    面试题】人工智能工程师高频面试题汇总:Transformer篇(题目+答案)

    随着人工智能技术的突飞猛进,AI工程师成为了众多求职者梦寐以求的职业。想要拿下这份工作,面试的时候得展示出你不仅技术过硬,还得能解决问题。所以,提前准备一些面试常问的问题,比如机器学习的那些算法
    的头像 发表于 12-13 15:06 695次阅读
    【<b class='flag-5'>面试题</b>】人工智能工程师高频<b class='flag-5'>面试题</b>汇总:Transformer篇(题目+答案)

    人工智能工程师高频面试题汇总——机器学习篇

    ,或者深度学习的框架,还有怎么优化模型,这些都是加分项,能有效提高面试通过率。本篇小编整理了一些高频的机器学习方面的面试题,这些题目都是从实际面试中总结出来的,非常具
    的头像 发表于 12-04 17:00 1064次阅读
    人工智能工程师高频<b class='flag-5'>面试题</b>汇总——机器学习篇

    同样是函数,在CC++中有什么区别

    同样是函数,在 CC++ 中有什么区别? 第一个返回值。 C语言的函数可以不写返回值类型,编译器会默认为返回 int。 但是
    的头像 发表于 11-29 10:25 525次阅读

    FCCSP与FCBGA都是倒装有什么区别

    本文简单介绍了倒装芯片球栅阵列封装与倒装芯片级封装的概念与区别。 FCCSP与FCBGA都是倒装,怎么区分?什么区别
    的头像 发表于 11-16 11:48 2768次阅读
    FCCSP与FCBGA都是倒装有<b class='flag-5'>什么区别</b>

    美国多IP服务器和美国多服务器什么区别

    美国多IP服务器和美国多服务器什么区别 美国多IP服务器和美国多服务器在概念、功能以及应用场景上存在明显的区别。主机推荐小编为您整理发布美国多IP服务器和美国多服务器
    的头像 发表于 11-11 10:22 318次阅读

    AIC3254的miniDSP编写代码和编写C5502代码什么区别

    问题:AIC3254的miniDSP编写代码和编写C5502代码什么区别,执行速度和代码量来进行分析吧,谢谢回复
    发表于 11-06 07:22

    C语言C++中结构体的区别

    同样是结构体,看看在C语言C++中有什么区别
    的头像 发表于 10-30 15:11 413次阅读

    RTOS与Linux到底什么区别

    很多做嵌入式开发的小伙伴都存在这样的疑惑:RTOS与Linux到底什么区别
    的头像 发表于 10-29 09:53 677次阅读

    请问ESPTOUCH和AIRKISS什么区别

    请问ESPTOUCH和AIRKISS什么区别?谢谢!
    发表于 07-12 12:44

    RV 和ARM什么区别

    district RV 和ARM什么区别
    发表于 06-26 12:41

    PLC编程语言C语言区别

    在工业自动化和计算机编程领域中,PLC(可编程逻辑控制器)编程语言C语言各自扮演着重要的角色。尽管两者都是编程语言,但它们在多个方面存在显著的区别
    的头像 发表于 06-14 17:11 3589次阅读