其它高频考点

1、GCC编译的四个阶段以及作用


  • 预处理
  • 编译
  • 汇编
  • 链接

2、开发过程中用什么工具进行调试


  • 加打印
  • gdb
  • coredump

3、动态库(.so/.dll)与静态库(.a/.lib)的区别


文件后缀不同

  • 静态库,linux系统下:xxx.a;window系统下:xxx.lib
  • 动态库,linux系统下:xxx.so;window系统下:xxx.dll

链接时期不同

  • 静态库是在链接阶段与其它.o文件链接成可执行程序,所以可执行程序体积相对较大
  • 动态库是在可执行文件运行时再加载到内存中

占用磁盘大小不同

  • 有n个可执行文件引用了同一个静态库,那么该静态库在磁盘中就有n个拷贝
  • 有n个可执行文件引用了同一个动态库,那么该动态库在磁盘中只有1个拷贝

库的发布方式不同

  • 修改静态库,除了重新编译静态库之外,还需要重新编译程序,再将程序发布出去
  • 修改动态库,只需要重新编译动态库,只发布动态库即可

程序启动速度不同

  • 使用静态库的程序启动速

剩余60%内容,订阅专栏后可继续查看/也可单篇购买

嵌入式软件面试笔记 文章被收录于专栏

该笔记涵盖嵌入式软件工程师技术面试中的知识点,归纳总结为:C/C++、操作系统、计算机网络、数据结构与算法、linux常用命令等章节。

全部评论

相关推荐

zhiyog:哈哈哈,其实是津巴布韦币
点赞 评论 收藏
分享
评论
1
6
分享

创作者周榜

更多
牛客网
牛客企业服务