C语言中头文件和源文件的注意事项

文章目录

  • C语言中头文件和源文件的注意事项
    • 0.前言
    • 1.实现步骤
      • 1.1 拆分前
      • 1.2 拆分后
    • 2.总结
      • 2.1头文件内容
      • 2.2 源文件(.c)内容
      • 2.3 函数声明和定义

0.前言

因为C语言编程或者C++语言编程,经常要添加头文件,不像Python中直接引入第三库就可以(import),但是嵌入式编程中C还是主流,Python目前这方面的应用还是比较少的,故如果完成一个大型项目,会有人把不同部分进行集成,而这个人就是集成工程师。再者如果是个人编程,也不可能把所有任务都用一个.c程序完成,不可避免有多个.c文件和多个.h文件。因此此文章,把自己平常使用的过程记录下来,一来如果忘记了方便后续回忆,二来每次有新的总结就来更新内容。

1.实现步骤

1.1 拆分前

下图是没有进行拆分,所有文件都放在同一.c文件里面的效果,虽然结果是一样的,但是不方便后续扩展。

1.2 拆分后

把主函数main.c和算法函数bubble_sort.c和算法函数的.h头文件分别进行。

2.总结

2.1头文件内容

如果一个文件中需要其他文件文件定义的内容,其他用引入其对应的头文件,因此要养成一个好习惯,每个.c文件要对应一个.h文件,.h文件里面声明.c中的函数,已经宏定义,结构体,数组,之类的数据结构类型。

2.2 源文件(.c)内容

.c文件中只需要编写函数主体内容就好,如果因此了其他函数中的变量,记得把对应的头文件都加上!

2.3 函数声明和定义

在C语言中: 如果函数定义放在引用函数之前,那么也不需要声明就可以调用。

C语言中头文件和源文件的注意事项相关推荐

  1. 什么是c 语言中源文件,C++中头文件和源文件详细介绍

    C++中的头文件和源文件详解 一.C++编译模式 通常,在一个C++程序中,只包含两类文件--.cpp文件和.h文件.其中,.cpp文件被称作C++源文件,里面放的都是C++的源代码:而.h文件则被称 ...

  2. c语言头文件和源文件为什么分开,C语言中为什么要头文件和源文件分开写

    对c&c++程序来说,基本上来说都是要把源文件和头文件分别编写.一般都是代表一个基本功能的源文件引用相应的头文件. 一个 相关功能的模块可能有若干对源文件和头文件组成.这是基于组件编程的核心. ...

  3. C++ 笔记(25)— 理解 C++ 中的头文件和源文件的作用

    1. C++ 编译模式 通常,在一个 C++ 程序中,只包含两类文件: .cpp 文件,被称作 C++ 源文件,里面放的都是 C++ 的源代码 .h 文件,被称作 C++ 头文件,里面放的也是 C++ ...

  4. 详解C语言中头文件的作用

    大家好,先做个自我介绍,我是天蓬,欢迎阅读本篇博文. 由于本人理解能力不是很好,阅读他人文章时,常常看得晕头晕脑,这让我很是头疼,我想,世界上一定还有和我一样的人(哈哈,不是说你么笨哦).所以,我将会 ...

  5. C语言头文件和源文件差异,#include两种引用方式差异

    一些初学c语言的人,不知道头文件(*.h文件)原来还可以自己写的.只知道调用系统库函数时,要使用#include语句将某些头文件包含进去.其实,头文件跟.c文件一样,是可以自己写的.头文件是一种文本文 ...

  6. C++中的头文件和源文件:如何写头文件

    C++中的头文件和源文件 转自:博客园http://www.cnblogs.com/lidabo/archive/2012/04/17/2454568.html 一.C++编译模式 通常,在一个C++ ...

  7. C++中头文件和源文件详细介绍

    C++中的头文件和源文件详解 一.C++编译模式 通常,在一个C++程序中,只包含两类文件--.cpp文件和.h文件.其中,.cpp文件被称作C++源文件,里面放的都是C++的源代码:而.h文件则被称 ...

  8. 理解 C++ 中的头文件和源文件的作用

    一.C++ 编译模式 通常,在一个 C++ 程序中,只包含两类文件-- .cpp 文件和 .h 文件.其中,.cpp 文件被称作 C++ 源文件,里面放的都是 C++ 的源代码:而 .h 文件则被称作 ...

  9. C++中的头文件和源文件

    一.C++编译模式 通常,在一个C++程序中,只包含两类文件--.cpp文件和.h文件.其中,.cpp文件被称作C++源文件,里面放的都是C++的源代码:而.h文件则被称作C++头文件,里面放的也是C ...

最新文章

  1. Matlab中去除exe执行时文件的DOS窗口的方法
  2. BIML 101 - ETL数据清洗 系列 - BIML 快速入门教程 - 序
  3. UVa12704 - Little Masters
  4. php exec多条命令怎么拼接_PHP--手摸手,教你撸一个会自动补全的命令行工具1
  5. 一段JAVA签名算法的PHP改写
  6. Exchange 2010 RPC配置静态RPC端口客户端访问、通讯簿服务和公用文件夹连接
  7. 如何优化android内存,Android内存优化
  8. 计划任务文件 linux,Linux计划任务Crontab学习笔记(3):配置文件
  9. 【Xamarin报错】visual studio android 模拟器部署卡住
  10. mybatis实战总结
  11. 即将开源 | 2亿用户背后的Flutter应用框架Fish Redux 1
  12. HyperX Savage系列 DDR3 2400 16GB (8GBx2)玩虚拟化部署
  13. 三、电容屏原理(2)
  14. 搜索引擎网站收录入口大全
  15. ps 打开失败 提示:暂存盘已满
  16. 【C++决赛】2019年全国高校计算机能力挑战赛决赛C++组题解
  17. 巨人史玉柱放弃独权:放任年轻研发团队犯错
  18. Vue项目实现web端第三方分享(qq、qq空间、微博、微信)
  19. iOS swift5 手动导入SnapKit(不用cocoapods)
  20. 小伙伴们-GO-带你揭开Linux的神秘面纱

热门文章

  1. Magix Music Maker 2023评测
  2. Idea 删除当前一行的快捷键
  3. 物联卡中心:物联网时代,请保护好你的个人隐私!
  4. python+selenium自动化软件测试
  5. SolidWorks螺旋线圈(扁平)的制作画图
  6. python进阶练习之——打印星号❤️
  7. 关于远程桌面进程强制关闭后导致服务崩溃无法连接的修复
  8. java.lang.IllegalStateException: commit already called
  9. Python爬虫 从小白到高手 各种最新案例! Urllib Xpath JsonPath BeautifulSoup
  10. 李玉婷MYSQL进阶02:条件查询