C语言综合 必会 嵌入式面经 笔试题

4.综合题(18道) 

4.1 下面代码输出是几?
int main()  
{  
    int j = 2;  
    int i = 1;  
    if(i = 1j = 3;  
    if(i = 2j = 5;  
    printf("%d", j);  
}  

答案:输出为5。 

解读:注意if的条件语句用的是赋值符"="而不是等号"==",因此条件一直为真。 


4.2 负数和正数的反码、补码分别是什么?
(1)负数的反码:对原码除符号位外的其余各位逐位取反就是反码。 
(2)负数的补码:负数的补码就是对反码加1。 
(3)正数的原码、反码、补码都一样。 

4.3 编译和链接有什么不同?(如对外部符号的处理)
(1)编译(+汇编)生成的是目标文件(*.o)。编译过程中对于外部符号(如用extern跨文件引用的全局变量)不做任何解释和处理,外部符号对应的就是"符号"。 
(2)链接生成的是可执行程序。链接将会解释和处理外部符号,外部符号对应的是地址。 


4.4 函数参数的传递方式有几种?
(1)两种:值传递、指针传递。 
(2)严格来看,只有一种传递,值传递,指针传递也是按值传递的,复制的是地址。 

4.5 局部变量能否和全局变量重名?  
答案:能,局部会屏蔽全局。要用全局变量,需要使用"::"。 
注意:对于有些编译器而言,在同一个函数内可以定义多个同名的局部变量,比如在两个循环体内都定义一个同名的局部变量,而那个局部变量的作用域就在那个循环体内。 


4.6如何引用一个已经定义过的全局变量? 

答案:可以用引用头文件的方式(不建议,可能会造成重复定义),也可以用extern关键字。 

注意:

(1)如果用引用头文件方式来引用某个在头文件中声明的全局变理,假定你将那个变量写错了,那么在编译期间会报错。 

(2)如果你用extern方式引用时,假定你犯了同样的错误,那么在编译期间不会报错,而在链接期间报错。 


以上内容摘自牛客官方专刊《嵌入式岗位笔试面试真题讲解》,数千位同学已订阅,该专刊不仅有真题讲解,还有经验分享,不清楚嵌入式该学什么的同学,想找嵌入式实习/正式工作的同学,都可以来看看:  https://blog.nowcoder.net/zhuanlan/v0ELPM



引流:华为小米 OPPO、VIVO、荣耀、努比亚、CVTE 大疆、insta360影石、美的 TCL、创维、海信、海尔、长虹、烽火、经纬恒润、小鹏、图森未来 百度滴滴、蔚来、理想、比亚迪、吉利、小马智行、元戎启行、摩拜、豪威、 联发科、紫光展锐、全志、 寒武纪晶晨半导体、汇顶、 华为中兴浪潮TP-LINK讯飞、商汤、海康威视、浙江 大华、旷视、360。
#秋招##内推##校招##面经##嵌入式#
全部评论
C语言好久没学了,现在找工作想找嵌软方向的,来搜教学就搜到了题主大佬的,真的很有用,非常感谢!
1
送花
回复
分享
发布于 2022-09-21 16:30 广东
好详细,已订阅!
点赞
送花
回复
分享
发布于 2022-09-11 13:23 广东
秋招专场
校招火热招聘中
官网直投
写的很好,已订阅
点赞
送花
回复
分享
发布于 2022-09-12 06:48 河南
写的很用心,收费也不贵,已经订阅
点赞
送花
回复
分享
发布于 2022-09-12 22:37 北京
已订阅,总结的很到位
点赞
送花
回复
分享
发布于 2022-09-13 10:01 河北
写的很好 已订阅
点赞
送花
回复
分享
发布于 2022-09-13 13:59 江苏
很棒很棒!!
点赞
送花
回复
分享
发布于 2022-09-13 22:14 浙江
特别好,已订阅
点赞
送花
回复
分享
发布于 2022-09-14 14:07 天津
大佬写的就是棒!值当
点赞
送花
回复
分享
发布于 2022-09-17 16:16 广西
写的很用心!大赞!!!
点赞
送花
回复
分享
发布于 2022-09-17 16:21 安徽
大佬是真的牛逼,respect!!!
点赞
送花
回复
分享
发布于 2022-09-17 16:46 山东
订阅了
点赞
送花
回复
分享
发布于 2022-09-19 19:52 福建
资料很好哦
点赞
送花
回复
分享
发布于 2022-09-20 16:55 广西
写的很好,已经订阅,很有价值
点赞
送花
回复
分享
发布于 2022-09-22 20:45 陕西

相关推荐

小公司 具体情况不知 JAVA开发 n*14 硕士其他
点赞 评论 收藏
转发
14 93 评论
分享
牛客网
牛客企业服务