0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

C語言程序例程的文件結(jié)構(gòu)

Q4MP_gh_c472c21 ? 來源:未知 ? 作者:龔婷 ? 2018-03-14 10:32 ? 次閱讀

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

1、例程的文件結(jié)構(gòu)

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 中的函數(shù)聲明或宏定義,也可以不包含進(jìn)來

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

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

{

inti;

longresult = 0;

// 參數(shù)不符合規(guī)則,返回 -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;

// 參數(shù)不符合規(guī)則,返回 -1

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

{

return-1;

}

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

{

result *= i;

}

// 返回大于等于0的值

returnresult;

}

web.c 源碼:

// 使用到了 func.h 中的宏定義,必須包含進(jìn)來,否則編譯錯誤

#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

運(yùn)行結(jié)果:

從1加到10的和為55從1乘到10的積為3628800OS:Linux

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • C語言
    +關(guān)注

    關(guān)注

    180

    文章

    7595

    瀏覽量

    135923
  • 源文件
    +關(guān)注

    關(guān)注

    0

    文章

    30

    瀏覽量

    4566

原文標(biāo)題:通俗易懂!Linux C模塊化編程實(shí)例講解

文章出處:【微信號:gh_c472c2199c88,微信公眾號:嵌入式微處理器】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    hex文件怎么能轉(zhuǎn)回去c語言

    將 .hex 文件直接“轉(zhuǎn)回去”為原始的C語言代碼是不可能的,因?yàn)?.hex 文件是編譯后的二進(jìn)制文件,它包含了機(jī)器碼,這些機(jī)器碼是處理器可
    的頭像 發(fā)表于 09-02 10:46 ?1329次閱讀

    hex文件如何查看原c語言代碼

    直接將 .hex 文件轉(zhuǎn)換回原始的 C 語言代碼是不可能的,因?yàn)?.hex 文件是二進(jìn)制文件,它包含了單片機(jī)
    的頭像 發(fā)表于 09-02 10:37 ?1234次閱讀

    技術(shù)干貨驛站 ▏深入理解C語言:掌握程序結(jié)構(gòu)知識

    在計算機(jī)編程的世界中,C語言被廣泛認(rèn)可為一門強(qiáng)大而高效的編程語言,其簡潔的語法和直接的指令使得它成為了許多程序員的首選。了解C
    的頭像 發(fā)表于 07-27 08:45 ?1164次閱讀
    技術(shù)干貨驛站 ▏深入理解<b class='flag-5'>C</b><b class='flag-5'>語言</b>:掌握<b class='flag-5'>程序結(jié)構(gòu)</b>知識

    嵌入式系統(tǒng)中C語言結(jié)構(gòu)體的基礎(chǔ)實(shí)現(xiàn)與應(yīng)用

    C語言中的數(shù)組只能允許程序員定義存儲相同類型數(shù)據(jù)。但是結(jié)構(gòu)C語言編程中允許您存儲不同數(shù)據(jù)類型的
    發(fā)表于 03-12 14:29 ?414次閱讀
    嵌入式系統(tǒng)中<b class='flag-5'>C</b><b class='flag-5'>語言</b><b class='flag-5'>結(jié)構(gòu)</b>體的基礎(chǔ)實(shí)現(xiàn)與應(yīng)用

    C語言必備知識頭文件包含

    文件C語言中是非常重要的組成部分。
    的頭像 發(fā)表于 12-01 18:20 ?1797次閱讀

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

    Visual C++ 是一個集成開發(fā)環(huán)境(IDE),用于開發(fā) CC++ 程序。在 Visual C++ 中,新建一個
    的頭像 發(fā)表于 11-27 15:57 ?3481次閱讀

    c語言程序設(shè)計基礎(chǔ)知識點(diǎn)

    C語言是一種通用的高級編程語言,廣泛應(yīng)用于系統(tǒng)軟件、應(yīng)用程序和嵌入式系統(tǒng)的開發(fā)。它是一種結(jié)構(gòu)化編程語言
    的頭像 發(fā)表于 11-27 15:25 ?1577次閱讀

    如何把c語言程序變成應(yīng)用程序

    C語言程序轉(zhuǎn)變?yōu)閼?yīng)用程序可以分為以下幾個步驟:編寫源代碼、編譯、鏈接和運(yùn)行。在這篇文章中,我將詳細(xì)介紹這些步驟以及相關(guān)的工具和技術(shù)。 第一步是編寫源代碼。在
    的頭像 發(fā)表于 11-26 09:04 ?3315次閱讀

    c語言編寫的源程序可以直接運(yùn)行嗎

    C語言編寫的源程序不能直接運(yùn)行,必須經(jīng)過一系列的編譯鏈接過程才能生成可執(zhí)行文件,然后才能運(yùn)行。 C語言
    的頭像 發(fā)表于 11-26 09:03 ?6620次閱讀

    嵌入式C語言結(jié)構(gòu)特點(diǎn)

    過程中,不論是基于寄存器開發(fā)還是基于庫開發(fā),深入理解和掌握嵌入式C語言的函數(shù)、指針、結(jié)構(gòu)體是學(xué)習(xí)STM32的關(guān)鍵。嵌入式C語言
    的頭像 發(fā)表于 11-24 16:16 ?628次閱讀
    嵌入式<b class='flag-5'>C</b><b class='flag-5'>語言</b>的<b class='flag-5'>結(jié)構(gòu)</b>特點(diǎn)

    c程序的基本結(jié)構(gòu)是什么

    C語言程序的基本結(jié)構(gòu)是由多個函數(shù)組成的。每個程序至少包含一個主函數(shù),也可以包含其他的函數(shù),而這些函數(shù)相互之間可以進(jìn)行相互調(diào)用,以完成特定的
    的頭像 發(fā)表于 11-24 10:24 ?2144次閱讀

    c語言程序main函數(shù)的位置

    C語言程序中的main函數(shù)是程序的入口點(diǎn),它被認(rèn)為是C語言
    的頭像 發(fā)表于 11-24 10:23 ?2267次閱讀

    c語言中順序結(jié)構(gòu)的基本流程

    C語言是一種通用的編程語言,注重結(jié)構(gòu)化編程和順序結(jié)構(gòu)。順序結(jié)構(gòu)
    的頭像 發(fā)表于 11-22 10:20 ?915次閱讀

    c語言程序實(shí)例大全

    電子發(fā)燒友網(wǎng)站提供《c語言程序實(shí)例大全.rar》資料免費(fèi)下載
    發(fā)表于 11-20 11:39 ?1次下載
    <b class='flag-5'>c</b><b class='flag-5'>語言</b><b class='flag-5'>程序</b>實(shí)例大全

    C語言教程及經(jīng)典程序

    電子發(fā)燒友網(wǎng)站提供《C語言教程及經(jīng)典程序.rar》資料免費(fèi)下載
    發(fā)表于 11-18 10:37 ?2次下載
    <b class='flag-5'>C</b><b class='flag-5'>語言</b>教程及經(jīng)典<b class='flag-5'>程序</b>