LinuxC测试题整理(一)

1. 请描述什么是嵌入式?嵌入式开发的优点有哪些?
答:嵌入式即为在已有的硬件平台上移植操作系统。
优点:
①开发人员无需了解硬件的工作原理
②提高软件代码的可移植性,从而提高开发效率, 降低开发成本
③操作系统是个资源库,有很多开源的软件和工具

2.嵌入式开发中为什么选择C语言作为开发语言,C语言有哪些缺点?
答:C语言的优点:
①出色的可移植性,可在多种不同体系结构的软/硬件平台上运行
②可直接访问硬件
③很高的运行效率
C语言的缺点: 维护性差、扩展性差、复用性差…

3.将一个 .C 文件到可执行文件需要经历哪几步? 每一步的作用是什么?
答:①预处理:头文件展开,宏替换,条件编译等
②编译:源文件编程目标文件(.O .obj)
③汇编:.O–>.S
④链接:将 .S =>可执行文件

4.头文件#include< > 和#include “” 中的 < > 和 “ ” 有什么区别?
答: < > 表示在系统头文件目录下搜索,议案包括系统自带的头文件
“ ” 表示现在当前目录下搜素,找不到再去系统头文件目录下搜索

5.Makefile的功能是什么?分为哪几类?请描述一下每类的基本功能。
答:三类Makefile文件:
①总控Makefile:
1. 进入各个子目录(功能子目录)里执行make 命令
2. 将所有的.o文件链接生成最终可执行文件
②功能子目录Makefile: 将src目录下的.c文件编译生成.o文件
③scripts目录的Makefile:定义许多变量(相当于C语言中的头文件)

猜你喜欢

转载自blog.csdn.net/pencher_liu/article/details/53561284