chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

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

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

掃碼添加小助手

加入工程師交流群

以往寫C語言程序都是一個(gè)文件里面寫個(gè)幾十、幾百行,在練算法的時(shí)候還可以,現(xiàn)在搞開發(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 源碼:

// 沒有使用到 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)來,否則編譯錯(cuò)誤

#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)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • C語言
    +關(guān)注

    關(guān)注

    183

    文章

    7646

    瀏覽量

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

    關(guān)注

    0

    文章

    31

    瀏覽量

    4905

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

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

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    C語言主要特點(diǎn)

    指針類型數(shù)據(jù),使用十分靈活和多樣化,能用來實(shí)現(xiàn)各種復(fù)雜的數(shù)據(jù)結(jié)構(gòu)(如鏈表、樹、棧等)的運(yùn)算。 4.具有結(jié)構(gòu)化的控制語句。用函數(shù)作為程序的模塊單位,便于實(shí)現(xiàn)程序的模塊化。
    發(fā)表于 01-05 07:41

    C語言C++之間的區(qū)別是什么

    函數(shù)重載,即在同一作用域內(nèi)可以定義多個(gè)同名函數(shù),只要它們的參數(shù)列表不同即可。 C語言不支持函數(shù)重載,每個(gè)函數(shù)必須具有唯一的標(biāo)識(shí)符。 4、異常處理: C++內(nèi)置了異常處理機(jī)制,允許程序
    發(fā)表于 12-11 06:23

    單片機(jī)C語言編程的心得

    規(guī)范程序結(jié)構(gòu)化設(shè)計(jì)的需要,既可以實(shí)現(xiàn)大型程序的模塊化,又可以實(shí)現(xiàn)根各模塊的連接調(diào)試。 1、.H文件介紹: 在單片機(jī)C程序設(shè)計(jì)中,項(xiàng)目一般按
    發(fā)表于 12-08 07:44

    C語言的編程技巧

    一個(gè)成員是一個(gè)未知大小的數(shù)組,適用于動(dòng)態(tài)分配內(nèi)存并關(guān)聯(lián)一個(gè)可變長度的數(shù)組。? ?3、匿名結(jié)構(gòu)體和聯(lián)合體?:C語言允許在結(jié)構(gòu)體或聯(lián)合體中定義不帶標(biāo)簽的內(nèi)部
    發(fā)表于 11-27 06:46

    C語言程序結(jié)構(gòu)

    ,87LPC764有4KB的Flash ROM,而筆者的程序量只有2KB多點(diǎn),因而第一個(gè)想法是改用C語言作為主要的開發(fā)語言,應(yīng)該不至于導(dǎo)致代碼空間不夠用。其次,考慮到需要定時(shí)功能的模塊
    發(fā)表于 11-26 08:12

    C語言的分支結(jié)構(gòu)介紹

    1.簡單if語句 C語言中的分支結(jié)構(gòu)語句中的if條件語句。 簡單if語句的基本結(jié)構(gòu)如下: 代碼語言:javascript if(表達(dá)
    發(fā)表于 11-25 07:48

    C語言和單片機(jī)C語言有什么差異

    有些擴(kuò)展,及一些特殊寫法如C51擴(kuò)展的 data xdata bit sbit一類的,還有一些中斷程序寫法 void int() interrput 1一類的。 2、C是一門高級(jí)語言
    發(fā)表于 11-14 07:55

    C語言結(jié)構(gòu)體使用

    型的數(shù)據(jù)組合。 結(jié)構(gòu)體的聲明與定義 結(jié)構(gòu)體的聲明一般形式為: c struct 結(jié)構(gòu)體名{ 成員1; 成員2; ... }; //注意分號(hào) 例如:
    發(fā)表于 11-12 08:30

    蜂鳥E203能夠仿真運(yùn)行C語言程序嗎?

    我看那兩本書里面都是說怎么在FPGA上運(yùn)行C語言程序和Benchmark程序,它提供仿真器下如何編譯運(yùn)行C
    發(fā)表于 11-06 06:21

    蜂鳥例程的編譯與程序的加載

    1 例程的編譯 1.1 匯編語言程序原理 對(duì)于匯編文件(.S),以rv32ui-p-add.S文件為例,編譯與執(zhí)行過程如下: ① 使用命令m
    發(fā)表于 10-24 13:34

    nuclei studio生成的c語言文件是不支持c的語法嗎?

    nuclei studio 生成的c語言文件感覺不支持c的語法,因?yàn)閯偸褂眠@個(gè)軟件,還請(qǐng)各位大佬幫忙看看
    發(fā)表于 10-20 11:02

    C語言精彩編程百例-364頁

    內(nèi)容提要 C是一種通用的程序設(shè)計(jì)語言,它包含了緊湊的表達(dá)式、豐富的運(yùn)算符集合、現(xiàn)代控制流以及數(shù)據(jù)結(jié)構(gòu)等四個(gè)部分。C語言功能豐富,衣達(dá)能力強(qiáng),
    發(fā)表于 06-13 17:28

    STC單片機(jī)范例程序

    電子發(fā)燒友網(wǎng)站提供《STC單片機(jī)范例程序.zip》資料免費(fèi)下載
    發(fā)表于 06-04 16:27 ?10次下載

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

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

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

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