0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

单片机C语言编程:.H文件与.C文件的关系

电源研发精英圈 来源:电源研发精英圈 2020-06-18 15:18 次阅读

这个8*8按键程序的过程中,不管是在自己写还是参考别人程序的过程中,发现自己对C语言有些基本知识点和编程规范有很多不懂的地方,有些是自己以前的编程习惯不好,有些就是基础知识不扎实的表现,所以总结出来。

一、.H文件与.C文件的关系:

迄今为止,写过的程序都是一些很简单的程序,从来没有想到要自己写.H文件,也不知道.H文件到底什么用,与.C文件什么关系。只是最近写键盘程序,参考别人的程序时,发现别人写的严格的程序都带有一个“KEY.H”,里面定义了.C文件里用到的自己写的函数,如Keyhit()、Keyscan()等。

经过查找资料得知,.H文件就是头文件,估计就是Head的意思吧,这是规范程序结构化设计的需要,既可以实现大型程序的模块化,又可以实现根各模块的连接调试。

1、.H文件介绍:

单片机C程序设计中,项目一般按功能模块化进行结构化设计。将一个项目划分为多个功能,每个功能的相关程序放在一个C程序文档中,称之为一个模块,对应的文件名即为模块名。一个模块通常由两个文档组成,一个为头文件*.h,对模块中的数据结构和函数原型进行描述;另一个则为C文件*.c ,对数据实例或对象定义,以及函数算法具体实现。

2、.H文件的作用

作为项目设计,除了对项目总体功能进行详细描述外,就是对每个模块进行详细定义,也就是给出所有模块的头文件。通常H头文件要定义模块中各函数的功能,以及输入和输出参数的要求。模块的具体实现,由项目组成根据H文件进行设计、编程、调试完成。为了保密和安全,模块实现后以可连接文件OBJ、或库文件LIB的方式提供给项目其他成员使用。由于不用提供源程序文档,一方面可以公开发行,保证开发人员的所有权;另一方面可以防止别人有意或无意修改产生非一致性,造成版本混乱。所以H头文件是项目的详细设计和团队工作划分的依据,也是对模块进行测试的功能说明。要引用模块内的数据或算法,只要用包含include指定模块H头文件即可。

3、.H文件的基本组成

/*如下为键盘驱动的头文档*/

#ifndef _KEY_H_ //防重复引用,如果没有定义过_KEY_H_,则编译下句

#define _KEY_H_ //此符号唯一, 表示只要引用过一次,即#i nclude,则定义符号_KEY_H_

/////////////////////////////////////////////////////////////////

char keyhit( void ); //击键否

unsigned char Keyscan( void ); //取键值

/////////////////////////////////////////////////////////////////

#endif

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    5998

    文章

    43963

    浏览量

    620694
  • C语言
    +关注

    关注

    180

    文章

    7527

    浏览量

    128176
  • 函数
    +关注

    关注

    3

    文章

    3863

    浏览量

    61303

原文标题:单片机C语言编程,心得都在这里了!

文章出处:【微信号:dianyuankaifa,微信公众号:电源研发精英圈】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    汽车ECU编程单片机C语言还是汇编语言

    汽车ECU编程单片机C语言吗?还是汇编语言
    发表于 01-26 06:08

    什么是C语言单片机有什么特点?为什么要用C语言编程

    随着技术的发展,电子产品越来越多,方便了我们的日常生活,大多数电子产品上都有单片机,而单片机是通过执行软件逻辑来实现功能的。而单片机编程最合适的编程
    的头像 发表于 11-21 10:06 695次阅读
    什么是C<b class='flag-5'>语言</b>?<b class='flag-5'>单片机</b>有什么特点?为什么要用C<b class='flag-5'>语言</b><b class='flag-5'>编程</b>?

    C语言真的需要头文件吗?#单片机 #编程 #嵌入式 #stm32 #stc

    单片机嵌入式编程
    jf_55975348
    发布于 :2023年11月18日 10:29:30

    单片机编程语言可以用c++吗?

    单片机编程语言可以用c++吗?
    发表于 11-09 06:40

    请问单片机用的是c语言的吗?

    请问单片机用的是c语言的吗?
    发表于 11-02 06:46

    C语言怎样处理json文件?

    获取到的JSON文件,怎样通过C语言进行处理,因为单片机里面只能用C语言,有没有
    发表于 11-01 06:16

    单片机C语言指针有什么用处呢?

    单片机C语言指针有什么用处呢
    发表于 10-23 07:18

    请问链表在单片机C语言中有应用吗?

    链表在单片机C语言中有应用么?
    发表于 10-16 07:28

    51单片机C语言程序100例分享

    51单片机C语言程序例程,通过简单的程序来学习51单片机,适合入门级使用!
    发表于 10-09 07:19

    51单片机C语言入门教程

    学习单片机实在不是件易事,一来要购买高价格的编程器,仿真器,二来要学习编程语言,还有众多种类的单片机选择真是件让人头痛的事。在众多
    发表于 09-28 08:01

    单片机C语言模块化编程资料

    提到 C 语言文件,大家都不会陌生。因为我们平常写的程序代码几乎都在这个 XX.C 文件里面。编译器也是以此
    发表于 09-28 07:23

    单片机C语言程序设计实训100例

    单片机C语言程序设计实训100例51 Proteus仿真本书基于Keil μVision程序设计平台和Proteus硬件仿真平台,精心编写了100余个8051单片机
    发表于 09-27 06:16

    8051单片机C语言编程入门指导手册

    8051单片机C语言编程入门指导书
    发表于 09-21 08:18

    请各位推荐一本C语言单片机的书籍?

    以前一直使用汇编编程,新塘M0汇编搞不定,求推荐几本好点的C语言单片机书籍,谢谢
    发表于 06-19 06:23

    【笔记】单片机头文件的顺序会让程序报错?

    。头文件的正确顺序主要涉及以下几个方面:1.依赖关系和声明顺序:在编写单片机程序时,可能会有一些头文件之间存在依赖关系。某些头
    的头像 发表于 05-19 09:50 903次阅读
    【笔记】<b class='flag-5'>单片机头文件</b>的顺序会让程序报错?