一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

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

Q4MP_gh_c472c21 ? 來(lái)源:未知 ? 作者:龔婷 ? 2018-03-14 10:32 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

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

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 源碼:

// 沒(méi)有使用到 func.h 中的函數(shù)聲明或宏定義,也可以不包含進(jìn)來(lái)

#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)來(lái),否則編譯錯(cuò)誤

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

{

returnWEB_NAME;

}char* getWebURL()

{

returnWEB_URL;

}

func.h 源碼:

#ifndef _FUNC_H

#define _FUNC_H

// 用宏定義來(lái)代替全局變量

#define OS "Linux"

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

#define WEB_NAME "百度"

// 也可以省略 extern,不過(guò)為了程序可讀性,建議都寫(xiě)上

externlongsum(int, int);

externlongmult(int, int);

externchar* getWebName();

externchar* getWebURL();

#endif

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

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

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

    關(guān)注

    180

    文章

    7632

    瀏覽量

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

    關(guān)注

    0

    文章

    30

    瀏覽量

    4785

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

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

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    程序設(shè)計(jì)與數(shù)據(jù)結(jié)構(gòu)

    程序設(shè)計(jì)與數(shù)據(jù)結(jié)構(gòu)》重點(diǎn)闡述了三大方向內(nèi)容: 1. C語(yǔ)言學(xué)習(xí)中的痛點(diǎn):針對(duì)當(dāng)前工程師在C語(yǔ)言
    發(fā)表于 05-13 16:45

    深入理解C語(yǔ)言C語(yǔ)言循環(huán)控制

    C語(yǔ)言編程中,循環(huán)結(jié)構(gòu)是至關(guān)重要的,它可以讓程序重復(fù)執(zhí)行特定的代碼塊,從而提高編程效率。然而,為了避免程序進(jìn)入無(wú)限循環(huán),
    的頭像 發(fā)表于 04-29 18:49 ?1145次閱讀
    深入理解<b class='flag-5'>C</b><b class='flag-5'>語(yǔ)言</b>:<b class='flag-5'>C</b><b class='flag-5'>語(yǔ)言</b>循環(huán)控制

    C語(yǔ)言的歷史及程序介紹

    電子發(fā)燒友網(wǎng)站提供《C語(yǔ)言的歷史及程序介紹.pdf》資料免費(fèi)下載
    發(fā)表于 04-09 16:10 ?0次下載

    如何在 樹(shù)莓派 上編寫(xiě)和運(yùn)行 C 語(yǔ)言程序?

    在本教程中,我將討論C編程語(yǔ)言是什么,C編程的用途,以及如何在RaspberryPi上編寫(xiě)和運(yùn)行C程序。本文的目的是為您介紹在Raspber
    的頭像 發(fā)表于 03-25 09:28 ?570次閱讀
    如何在 樹(shù)莓派 上編寫(xiě)和運(yùn)行 <b class='flag-5'>C</b> <b class='flag-5'>語(yǔ)言</b><b class='flag-5'>程序</b>?

    全套C語(yǔ)言培訓(xùn)資料—PPT課件

    與共用體、位運(yùn)算、文件 全套C語(yǔ)言培訓(xùn)資料,共427頁(yè),13個(gè)章節(jié):C語(yǔ)言概述、程序的靈魂—算
    發(fā)表于 03-12 14:50

    分析C語(yǔ)言代碼結(jié)構(gòu)的設(shè)計(jì)問(wèn)題

    來(lái)分析一個(gè)C語(yǔ)言代碼結(jié)構(gòu)的設(shè)計(jì)問(wèn)題。 這段代碼,使用了兩次malloc,分別給 p1 和 p2 申請(qǐng)了內(nèi)存。用完后,內(nèi)存釋放,防止內(nèi)存泄漏。 大家覺(jué)得,這樣的代碼設(shè)計(jì)有沒(méi)有問(wèn)題。 代碼是某位學(xué)員在
    的頭像 發(fā)表于 02-11 09:31 ?370次閱讀

    深入理解C語(yǔ)言:循環(huán)語(yǔ)句的應(yīng)用與優(yōu)化技巧

    程序設(shè)計(jì)中,我們常常需要重復(fù)執(zhí)行某一段代碼。為了提高效率和簡(jiǎn)化代碼,循環(huán)語(yǔ)句應(yīng)運(yùn)而生。C語(yǔ)言作為一門(mén)經(jīng)典的編程語(yǔ)言,提供了多種循環(huán)控制結(jié)構(gòu)
    的頭像 發(fā)表于 12-07 01:11 ?635次閱讀
    深入理解<b class='flag-5'>C</b><b class='flag-5'>語(yǔ)言</b>:循環(huán)語(yǔ)句的應(yīng)用與優(yōu)化技巧

    AWTK-WEB 快速入門(mén)(1) - C 語(yǔ)言應(yīng)用程序

    導(dǎo)讀AWTK可以使用相同的技術(shù)棧開(kāi)發(fā)各種平臺(tái)的應(yīng)用程序。有時(shí)我們需要使用Web界面與設(shè)備進(jìn)行交互,本文介紹一下如何使用C語(yǔ)言開(kāi)發(fā)AWTK-WEB應(yīng)用程序。用AWTKDesigner新建
    的頭像 發(fā)表于 11-27 11:46 ?716次閱讀
    AWTK-WEB 快速入門(mén)(1) - <b class='flag-5'>C</b> <b class='flag-5'>語(yǔ)言</b>應(yīng)用<b class='flag-5'>程序</b>

    技術(shù)干貨驛站 ▏深入理解C語(yǔ)言:掌握C語(yǔ)言條件判斷,從if到switch的應(yīng)用

    語(yǔ)句和條件運(yùn)算符。這些結(jié)構(gòu)不僅增強(qiáng)了代碼的靈活性,還提高了程序的可讀性和可維護(hù)性。本文將深入探討C語(yǔ)言中的主要條件判斷語(yǔ)句,包括它們的語(yǔ)法、使用方法及實(shí)際應(yīng)用,通過(guò)
    的頭像 發(fā)表于 11-09 01:10 ?866次閱讀
    技術(shù)干貨驛站 ▏深入理解<b class='flag-5'>C</b><b class='flag-5'>語(yǔ)言</b>:掌握<b class='flag-5'>C</b><b class='flag-5'>語(yǔ)言</b>條件判斷,從if到switch的應(yīng)用

    C語(yǔ)言C++中結(jié)構(gòu)體的區(qū)別

    同樣是結(jié)構(gòu)體,看看在C語(yǔ)言C++中有什么區(qū)別?
    的頭像 發(fā)表于 10-30 15:11 ?770次閱讀

    單片機(jī)hex文件反編譯成C語(yǔ)言的過(guò)程

    使用C語(yǔ)言編寫(xiě),然后編譯成機(jī)器碼并燒錄到單片機(jī)的存儲(chǔ)器中。 Hex文件是一種用于存儲(chǔ)單片機(jī)程序文件格式,它包含了
    的頭像 發(fā)表于 09-02 10:49 ?6125次閱讀

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

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

    hex文件如何查看原c語(yǔ)言代碼

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

    可重復(fù)頭文件的固定結(jié)構(gòu)

    年輕人,你可曾記得,在修習(xí)C語(yǔ)言的時(shí)候,見(jiàn)過(guò)這樣的字句:在創(chuàng)建頭文件的時(shí)候,一定要加入保護(hù)宏。
    的頭像 發(fā)表于 08-29 10:23 ?628次閱讀
    可重復(fù)頭<b class='flag-5'>文件</b>的固定<b class='flag-5'>結(jié)構(gòu)</b>

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

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