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

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

3天内不再提示

常见的嵌入式C语言的3道面试题含答案,快来学习吧!

Q4MP_gh_c472c21 来源:未知 作者:易水寒 2018-08-12 11:02 次阅读

题一:

简述strcpy sprintf与mencpy的区别

思考过后,再到下方寻找答案

题二:

如何避免“野指针”

思考过后,再到下方寻找答案

题三:

简述指针常量与常量指针区别

思考过后,再到下方寻找答案

题一答案:

三者主要有以下不同之处:(1)操作对象不同,strcpy的两个操作对象均为字符串,sprintf的操作源对象可以是多种数据类型,目的操作对象是字符串,memcpy 的两个对象就是两个任意可操作的内存地址,并不限于何种数据类型。(2)执行效率不同,memcpy最高,strcpy次之,sprintf的效率最低。(3)实现功能不同,strcpy主要实现字符串变量间的拷贝,sprintf主要实现其他数据类型格式到字符串的转化,memcpy主要是内存块间的拷贝。说明:strcpy、sprintf与memcpy都可以实现拷贝的功能,但是针对的对象不同,根据实际需求,来选择合适的函数实现拷贝功能。

题二答案:

“野指针”产生原因及解决办法如下:(1)指针变量声明时没有被初始化。解决办法:指针声明时初始化,可以是具体的地址值,也可让它指向NULL。(2)指针 p 被 free 或者 delete 之后,没有置为 NULL。解决办法:指针指向的内存空间被释放后指针应该指向NULL。(3)指针操作超越了变量的作用范围。解决办法:在变量的作用域结束前释放掉变量的地址空间并且让指针指向NULL。注意:“野指针”的解决方法也是编程规范的基本原则,平时使用指针时一定要避免产生“野指针”,在使用指针前一定要检验指针的合法性。

题三答案:

指针常量是指定义了一个指针,这个指针的值只能在定义时初始化,其他地方不能改变。其实指针常量是唯一的,即NULL;常量指针是指定义了一个指针,这个指针指向一个只读的对象,不能通过常量指针来改变这个对象的值。指针常量强调的是指针的不可改变性,而常量指针强调的是指针对其所指对象的不可改变性。注意:无论是指针常量还是常量指针,其最大的用途就是作为函数的形式参数,保证实参在被调用函数中的不可改变特性。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    4981

    文章

    18271

    浏览量

    288262
  • C语言
    +关注

    关注

    180

    文章

    7528

    浏览量

    128287
  • 指针
    +关注

    关注

    1

    文章

    473

    浏览量

    70361

原文标题:考一考!嵌入式C面试题3道

文章出处:【微信号:gh_c472c2199c88,微信公众号:嵌入式微处理器】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    常见嵌入式C语言面试题

    数组是最基本的数据结构,关于数组的面试题也屡见不鲜,本文罗列了一些常见面试题,仅供参考。目前有以下18道题目。
    发表于 07-18 10:46 589次阅读

    经典嵌入式面试题

    经典嵌入式面试题
    发表于 08-20 09:39

    嵌入式软件工程师笔试题(含答案)

    嵌入式软件工程师笔试题(含答案)
    发表于 08-20 10:07

    C语言面试题大全

    C语言面试题大全{:1:}{:2:}{:1:}{:1:}{:1:}{:1:}
    发表于 04-10 20:51

    又到一年毕业季,分享经典嵌入式面试题

    比较全面的嵌入式面试题,问答、选择题形式,有答案
    发表于 08-18 17:00

    C语言 经典面试题

    C语言经典面试题目.doc
    发表于 08-05 22:03

    嵌入式开发面试题3,思考一下,你会几个

    嵌入式开发面试题3,思考一下,你会几个1.ARM异常有哪些分类?2.ARM异常会发生哪些硬件操作?3.请简述中断和异常的差别?
    发表于 08-21 14:49

    12个常见C语言面试题

    12个C语言面试题,涉及指针、进程、运算、结构体、函数、内存
    发表于 12-31 06:36

    嵌入式工程师常见面试题汇总

    嵌入式工程师常见面试题,看看都会不!
    发表于 01-12 07:35

    嵌入式工程师常见面试题

    嵌入式工程师常见面试题,看看都会不!
    发表于 02-02 07:42

    嵌入式C语言面试题库 精选资料推荐

    嵌入式开发—C语言面试题用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)#define SECONDS_PER_YEAR (60 * 60 * 24 *
    发表于 07-19 07:21

    c语言面试题

    c语言面试题集(单片机)C language problem(20151125084232)
    发表于 12-18 14:05 8次下载

    c语言面试题

    c语言面试题
    发表于 11-05 16:48 0次下载

    浅谈嵌入式软件开发经典面试题

    嵌入式软件开发经典面试题
    的头像 发表于 03-20 14:25 7405次阅读
    浅谈<b class='flag-5'>嵌入式</b>软件开发经典<b class='flag-5'>面试题</b>

    分享10道有趣的嵌入式C语言面试题答案

    10个C语言面试题,涉及指针、进程、运算、结构体、函数、内存,看看你能做出几个!
    的头像 发表于 05-09 10:54 1693次阅读