1、前言

(1)工作开发中,一个项目是十分复杂的,必须要有清晰的工程目录框架去管理整个工程,使源文件、头文件、库文件都在合适的目录下,能降低整个开发过程以及后续维护的难度;
(2)下面介绍的工程目录结构是比较通用的,大部分公司的结构都和这个类似,理解下面的目录结构,以后去阅读一个新项目的代码就有头绪,知道整个项目的框架结构;

2、目录结构

 ./Trunk/├── bin ├── build│   ├── Makefile├── lib├── docs├── include│   ├── inner│   ├── xxx1│   └── xxx2├── patch├── src├── test└── tool

Trunk英文意思就是躯干、主体的意思,在SVN中申请代码仓库一般都是Trunk名字的文件夹。

3、目录含义介绍

目录 存放内容
bin 存放产物的目录,产物可能是静态库、动态库、可执行程序
build 存放Makefile,Makefile大致分为编译动态库、静态库,和编译可执行程序,参考博客:《静态库和动态库介绍以及Makefile》
lib 编译过程中依赖的动态库、静态库
docs 存放工程的设计文档、资料等,便于后续维护人员理解整个工程
include 存放头文件的目录
inner 一般是工程内部使用的头文件
xxx1和xxx2 代表存放需要和其他工程交互的头文件目录,一般是采用映射的方式保持同步
patch 存放补丁文件
src 存放源文件
test 存放工程的测试代码
tool 编译工程依赖的工具

实际工作开发中C语言工程的目录结构分析相关推荐

  1. 反思:项目开发中的语言沟通与文档沟通

    反思:项目开发中的语言沟通与文档沟通 问题引出:刚进入公司试用期,有导师安排开发实现一些功能模块或者小的应用.毕竟需要在整个产品的框架下添加代码,看了下整个产品近1G的源代码,相当浩瀚.虽然是不需要我 ...

  2. 嵌入式开发中C语言编程要点简述!

    在嵌入式Linux的C语言开发中,C语言的基本编程依然是最重要的内容.除此之外,与一般的C语言编程相比,嵌入式Linux的C语言编程有以下一些要点: 1.库函数与系统调用 在进行C语言编程的时候,使用 ...

  3. 【开发规范】go项目开发中的[流程,git,代码,目录,微服务仓库管理,静态检查]

    文章目录 前言 一.有哪些规范我们应该遵循 二.项目开发流程 三.git的代码分支管理 1. 分支管理 2. commit规范 三.go的代码规范 四.go项目目录规范 五.微服务该采用multi-r ...

  4. [培训-DSP快速入门-6]:C54x DSP开发中C语言库函数的使用

    作者主页(文火冰糖的硅基工坊):https://blog.csdn.net/HiWangWenBing 本文网址:https://blog.csdn.net/HiWangWenBing/article ...

  5. python如何最适合web开发中的人工智能?

    无论是初创公司还是跨国公司,Python都为每个人提供了一个很好的好处列表.它是最受欢迎和功能强大的高级编程语言,在2018年获得了极大的普及. 它的日益普及使得它能够进入一些最流行和最复杂的过程,如 ...

  6. Android 颜色(不)透明度的使用及项目开发中的心得总结

    文章目录 背景 1. Android中颜色简介 2. 不透明度 3. 使用方法 3.1 第一种使用方法 3.2 第二种使用方法 3.3. 第三种使用方法 4. 小结 背景 总结一下平时工作开发中,如何 ...

  7. 软件开发中的角色分工

    软件开发中的角色分工 文章目录 软件开发中的角色分工 一.项目经理 二.产品经理 三.UI设计师 四.架构师 五.开发工程师 六.测试工程师 七.运维工程师 一.项目经理 对整个项目负责,任务分配,把 ...

  8. maven工程的目录结构

    Eclipse中一个Maven工程的目录结构 (MacOS) www.cnblogs.com 2016-11-04 17:33 1. 为什么写这篇文章 在之前的javaSE开发中,没有很关注Eclip ...

  9. 在Visual Studio 2012中使用VMSDK开发领域特定语言(一)

    前言 本专题主要介绍在Visual Studio 2012中使用Visualization & Modeling SDK进行领域特定语言(DSL)的开发,包括两个部分的内容.在第一部分中,将对 ...

最新文章

  1. AIX下删除LV后的现场保护和数据恢复方案
  2. 【hihoCoder】1288 : Font Size
  3. Google Mesa概览
  4. php按时间分组的sql语句,(SQL语句)按指定时间段分组统计
  5. html alert 确认加事件,js事件中有alert执行顺序的问题
  6. cd如何省略空格 linux_在 Linux 上调整命令历史 | Linux 中国
  7. 幻速s3_藏在“L”背后的故事 体验北汽幻速-S3L
  8. Intel 8042键盘控制器详细介绍
  9. 折线图x轴的日期会超出_折线图技巧丨阈限颜色设置
  10. 4个月掌握核心技术 成为云计算行业专家
  11. 2019 Java 全栈工程师进阶路线图,一定要收藏!
  12. 表格里面如何快捷给方框内打勾
  13. 电脑键盘部分按键失灵_笔记本键盘部分失灵怎么办,笔记本个别键失灵的处理方法...
  14. 7.11 不区分大小写的匹配
  15. adb连接手机工具_adb命令——连接手机
  16. 乌卡时代下,企业供应链管理体系的应对策略
  17. Python3简单爬虫:爬取猫眼评分top100电影
  18. numpy中takes函数
  19. 手机wap端用户注册表单(html+css)
  20. Html img显示图片的三种方式

热门文章

  1. 抓取国家统计局网站上的最新县及县以上行政区划代码,并保存成json格式的文件
  2. 【教程】Python科研数据可视化、MATLAB科研数据可视化
  3. 趣图:众人眼中的深度学习
  4. 魏兴国:深入浅出DDoS攻击防御
  5. P问题、NP问题、NPC问题、NP难问题的概念[zz]
  6. 动量守恒和角动量守恒结果不同可能原因
  7. Docker USER 指定当前用户
  8. MySQL导出表结构表数据以及导入数据
  9. 斜杆“/”和反斜杠“\”的区别
  10. 编程语言学习之百家争鸣时代