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

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

3天内不再提示

C语言程序例程的文件结构

Q4MP_gh_c472c21 来源:未知 作者:龚婷 2018-03-14 10:32 次阅读

以往写C语言程序都是一个文件里面写个几十、几百行,在练算法的时候还可以,现在搞开发需要模块化编程,所谓模块化编程,就是指一个程序包含多个源文件(.c 文件和 .h 文件),每个 .c 文件可以被称为一个模块。

1、例程的文件结构

2、各文件代码main.c 源码:

#include #include "include/func.h"intmain()

{

intn1 = 1, n2 = 10;

printf("从%d加到%d的和为%ld\n", n1, n2, sum(n1, n2));

printf("从%d乘到%d的积为%ld\n", n1, n2, mult(n1, n2));

printf("OS:%s\n",OS);

printf("Power By %s(%s)", getWebName(), getWebURL());

return0;

}

math.c 源码:

// 没有使用到 func.h 中的函数声明或宏定义,也可以不包含进来

#include "../include/func.h"

// 从 fromNum 加到 endNumlongsum(intfromNum, intendNum)

{

inti;

longresult = 0;

//参数不符合规则,返回 -1

if(fromNum<0 || endNum<0 || endNum

{

return-1;

}

for(i=fromNum; i<=endNum; i++)

{

result += i;

}

// 返回大于等于0的值

returnresult;

}

// 从 fromNum 乘到 endNumlongmult(intfromNum, intendNum)

{

inti;

longresult = 1;

// 参数不符合规则,返回 -1

if(fromNum<0 || endNum<0 || endNum

{

return-1;

}

for(i=fromNum; i<=endNum; i++)

{

result *= i;

}

// 返回大于等于0的值

returnresult;

}

web.c 源码:

// 使用到了 func.h 中的宏定义,必须包含进来,否则编译错误

#include "../include/func.h"char* getWebName()

{

returnWEB_NAME;

}char* getWebURL()

{

returnWEB_URL;

}

func.h 源码:

#ifndef _FUNC_H

#define _FUNC_H

// 用宏定义来代替全局变量

#define OS "Linux"

#define WEB_URL "http://www.baidu.com"

#define WEB_NAME "百度"

// 也可以省略 extern,不过为了程序可读性,建议都写上

externlongsum(int, int);

externlongmult(int, int);

externchar* getWebName();

externchar* getWebURL();

#endif

运行结果:

从1加到10的和为55从1乘到10的积为3628800OS:Linux

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

    关注

    180

    文章

    7561

    浏览量

    133304
  • 源文件
    +关注

    关注

    0

    文章

    30

    浏览量

    4555

原文标题:通俗易懂!Linux C模块化编程实例讲解

文章出处:【微信号:gh_c472c2199c88,微信公众号:嵌入式微处理器】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    技术干货驿站 ▏深入理解C语言:掌握程序结构知识

    在计算机编程的世界中, C 语言被广泛认可为一门强大而高效的编程 语言,其简洁的语法和直接的指令使得它成为了许多 程序员的首选。了解 C
    的头像 发表于07-27 08:45 668次阅读
    技术干货驿站 ▏深入理解<b class='flag-5'>C</b><b class='flag-5'>语言</b>:掌握<b class='flag-5'>程序结构</b>知识

    嵌入式系统中C语言结构体的基础实现与应用

    C 语言中的数组只能允许 程序员定义存储相同类型数据。但是 结构C 语言编程中允许您存储不同数据类型的
    发表于03-12 14:29 292次阅读
    嵌入式系统中<b class='flag-5'>C</b><b class='flag-5'>语言</b><b class='flag-5'>结构</b>体的基础实现与应用

    怎么写出效率高、思路清晰的C语言程序

    要用 C 语言的思维方式来进行 程序的构架构建 要有良好的 C 语言算法基础,以此来实现 程序的逻辑构架
    的头像 发表于01-02 14:20 399次阅读

    C语言必备知识头文件包含

    文件C 语言中是非常重要的组成部分。
    的头像 发表于12-01 18:20 1311次阅读

    visualc++怎么新建c语言文件

    Visual C++ 是一个集成开发环境(IDE),用于开发 CC++ 程序。在 Visual C++ 中,新建一个
    的头像 发表于11-27 15:57 2552次阅读

    c语言程序设计基础知识点

    C 语言是一种通用的高级编程 语言,广泛应用于系统软件、应用 程序和嵌入式系统的开发。它是一种 结构化编程 语言
    的头像 发表于11-27 15:25 1230次阅读

    如何把c语言程序变成应用程序

    C 语言程序转变为应用 程序可以分为以下几个步骤:编写源代码、编译、链接和运行。在这篇文章中,我将详细介绍这些步骤以及相关的工具和技术。 第一步是编写源代码。在
    的头像 发表于11-26 09:04 2634次阅读

    c语言编写的源程序可以直接运行吗

    C 语言编写的源 程序不能直接运行,必须经过一系列的编译链接过程才能生成可执行 文件,然后才能运行。 C 语言
    的头像 发表于11-26 09:03 4353次阅读

    嵌入式C语言结构特点

    过程中,不论是基于寄存器开发还是基于库开发,深入理解和掌握嵌入式 C 语言的函数、指针、 结构体是学习STM32的关键。嵌入式 C 语言
    的头像 发表于11-24 16:16 478次阅读
    嵌入式<b class='flag-5'>C</b><b class='flag-5'>语言</b>的<b class='flag-5'>结构</b>特点

    c程序的基本结构是什么

    C 语言程序的基本 结构是由多个函数组成的。每个 程序至少包含一个主函数,也可以包含其他的函数,而这些函数相互之间可以进行相互调用,以完成特定的
    的头像 发表于11-24 10:24 1174次阅读

    c语言程序main函数的位置

    C 语言程序中的main函数是 程序的入口点,它被认为是 C 语言
    的头像 发表于11-24 10:23 1396次阅读

    c语言中顺序结构的基本流程

    C 语言是一种通用的编程 语言,注重 结构化编程和顺序 结构。顺序 结构
    的头像 发表于11-22 10:20 724次阅读

    c语言程序实例大全

    德赢Vwin官网 网站提供《 c 语言 程序实例大全.rar》资料免费下载
    发表于11-20 11:39 1次下载
    <b class='flag-5'>c</b><b class='flag-5'>语言</b><b class='flag-5'>程序</b>实例大全

    C语言教程及经典程序

    德赢Vwin官网 网站提供《 C 语言教程及经典 程序.rar》资料免费下载
    发表于11-18 10:37 0次下载
    <b class='flag-5'>C</b><b class='flag-5'>语言</b>教程及经典<b class='flag-5'>程序</b>

    C语言循环结构的使用方法

    详细介绍了 C 语言while循环 结构、do-while循环 结构、for循环 结构、循环退出语句的语法和使用方法。
    发表于11-02 11:26 959次阅读
    <b class='flag-5'>C</b><b class='flag-5'>语言</b>循环<b class='flag-5'>结构</b>的使用方法