日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

C语言模块化编程的例子

發(fā)布時間:2025/3/12 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C语言模块化编程的例子 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

以往寫C語言程序都是一個文件里面寫個幾十、幾百行,在練算法的時候還可以,現(xiàn)在搞開發(fā)需要模塊化編程,所謂模塊化編程,就是指一個程序包含多個源文件(.c 文件和 .h 文件),每個 .c 文件可以被稱為一個模塊。
1、例程的文件結(jié)構(gòu)

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

#include <stdio.h> #include "include/func.h" int main() {int n1 = 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());return 0; }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

math.c 源碼:

// 沒有使用到 func.h 中的函數(shù)聲明或宏定義,也可以不包含進來 #include "../include/func.h" // 從 fromNum 加到 endNum long sum(int fromNum, int endNum) {int i;long result = 0; // 參數(shù)不符合規(guī)則,返回 -1if(fromNum<0 || endNum<0 || endNum<fromNum){return -1;}for(i=fromNum; i<=endNum; i++){result += i;} // 返回大于等于0的值return result; } // 從 fromNum 乘到 endNum long mult(int fromNum, int endNum) {int i;long result = 1; // 參數(shù)不符合規(guī)則,返回 -1if(fromNum<0 || endNum<0 || endNum<fromNum){return -1;}for(i=fromNum; i<=endNum; i++){result *= i;} // 返回大于等于0的值return result; }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37

web.c 源碼:

// 使用到了 func.h 中的宏定義,必須包含進來,否則編譯錯誤 #include "../include/func.h" char* getWebName() {return WEB_NAME; } char* getWebURL() {return WEB_URL; }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

func.h 源碼:

#ifndef _FUNC_H #define _FUNC_H // 用宏定義來代替全局變量 #define OS "Linux" #define WEB_URL "http://www.baidu.com" #define WEB_NAME "百度" // 也可以省略 extern,不過為了程序可讀性,建議都寫上 extern long sum(int, int); extern long mult(int, int); extern char* getWebName(); extern char* getWebURL(); #endif
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

運行結(jié)果:
從1加到10的和為55
從1乘到10的積為3628800
OS:Linux
Power By 百度(http://www.baidu.com)

總結(jié)

以上是生活随笔為你收集整理的C语言模块化编程的例子的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。