C语言模块化编程

作者: 咸鱼爱学习 | 来源:发表于2017-06-25 23:40 被阅读190次

目标:

  • 有序,便捷地建立大型工程。
  • 追求接口单一性,将不需要的细节尽可能对外部隐藏。
  • 便于重复利用代码。
  • 便于分工合作

方式:

主函数调用模块函数。

具体实施:

根据功能将工程划分为不同模块。主函数只调用函数,而不定义函数。在各模块文件中定义功能函数,并将要用到的函数利用同名头文件申明外部函数供其他文件调用。

例子

流水灯设计
原程序代码:

#include<reg52.h>
sbit LED=P1^0;
unsigned int i,j;

void main()
{

while(1)

{

P1=~(1<<j++);

if(j==8)

j=0;

for(i=0;i<50000;i++);

}

}

我们将其模块划分并重新编译。首先分析功能可分为LED模块,主函数。
对应为:

main.c
Led.c Led.h

Led.c

#include <reg52.h>
#include "Led.h"
sbit LED=P1^0;
unsigned int i,j;

void ledFlash(void)
{
P1=~(1<<j); //灯亮

}

void ledStateChange(void)
{

if(j==8)
j=0;
for(i=0;i<50000;i++);   //延时
j++;

}

Led.h

#ifndef _LED_H_
#define _LED_H_
extern void ledFlash(void);
extern void ledStateChange(void);
#endif

main.c

#include <reg52.h>
#include "Led.h"

void main()
{
while(1)
{
ledFlash();
ledStateChange();
}
}

结果截图:

2017-06-25_233847.png

总结:

主函数中将具体功能隐藏至其他模块文件中,通过引用头文件、外部函数调用函数。平时多积累相关模块提高代码复用率。

相关文章

  • 极客班第一周学习笔记

    初识C++ C++是在C之上基于对象,面向对象的编程语言。c++相比c在编程上更加模块化,具象化。 C++代码规范...

  • 模块化编程学习

    本文参考CSDN朱工的专栏--嵌入式C语言之---模块化编程 模块化编程是将自己要实现的功能作为一个模块来进行编写...

  • C语言模块化编程

    目标: 有序,便捷地建立大型工程。 追求接口单一性,将不需要的细节尽可能对外部隐藏。 便于重复利用代码。 便于分工...

  • NODE02-Javascript模块化编程

      模块化编程是每个语言都有的,因为Javascript早期的目的与版本的发展,Javascript的模块化编程相...

  • 新手怎么在Linux系统上用c语言编程

    从课程目录来看,课程包含两部分:标准C语言编程和Linux系统编程。C语言编程使用C语言标准库;Linux系统编程...

  • 参加IT培训选什么课程比较好?

    编程语言众多,如:Python、web、Java、C#、 C、 PHP、Java、C++或go语言等,编程语言选择...

  • 面向结构编程的宠儿-链表

    Unity版本: 5.3.4 使用语言: C# First模块化编程是大多数初学者必经之路,然后可能你走向了结构...

  • C语言实战开发篇-2 C语言基础

    目标:提高编程能力,形成编程思想,精通JAVA,C语言的使用 C语言和C++的区别 1.C语言面向过程,C++面向...

  • 为什么要学习“ C”编程语言?

    “ C”编程是另一种编程语言的基本基础,像java、php,C++等热门编程语言都是“ C”编程最为底层开发,所以...

  • 我理解的C语言模块化编程

    欢迎关注我的博客Zhuhao's Blog获取最新文章 为什么要谈论模块化编程 相信写过c语言代码的朋友都知道,每...

网友评论

本文标题:C语言模块化编程

本文链接:https://www.haomeiwen.com/subject/vuqdcxtx.html