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

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

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

C語言一個功能的實現(xiàn)過程

汽車玩家 ? 來源:趣味c語言 ? 作者:趣味c語言 ? 2020-05-05 17:36 ? 次閱讀

看到本文的朋友們,如果你想系統(tǒng)地學(xué)習(xí)一下c語言程序設(shè)計,請您點擊文章左上角帶“C語言”三個字的藍(lán)色圓圈樣logo,進(jìn)入我的主頁,那里能看到我寫的所有文章,建議您按發(fā)表時間順序閱讀每一篇文章,因給先發(fā)表的文章和后發(fā)表的文章是按方便大家學(xué)習(xí)的順序遞進(jìn)設(shè)計的。

今天跟大家分享的是c語言程序?qū)崿F(xiàn)一個功能的過程,或者說最終結(jié)果的誕生過程。現(xiàn)階段,我們無需深究其細(xì)節(jié),只聊一聊它的基本過程,讓大家對c語言怎樣實現(xiàn)一個功能有個整體的了解。所謂知其然,知其所以然,只有了解了它的工作過程,后面才能更好地學(xué)習(xí)各個具體的知識點。

要實現(xiàn)一個什么功能呢?這是個問題。所以,我們第一步就是確定我們要實現(xiàn)什么功能,更規(guī)范一點的說法,就是要確定需求。

假如你是某學(xué)校的學(xué)生,現(xiàn)在老師有一個需求,讓你編一段c語言程序求自然數(shù)1到100的和。那么,我們的需求就確定了,一是要求自然數(shù)1到100的和,二是要用c語言實現(xiàn)這個功能。

第二步,我們開始編寫c語言程序。用什么軟件編輯都可以,我們就用windows系統(tǒng)自帶的記事本吧。

C語言一個功能的實現(xiàn)過程

程序編寫完了,保存文件,保存后,給文件取個名字,叫什么都可以,但擴(kuò)展名必須改為.c,因為c語言程序文件的擴(kuò)展名只能是.c或.h,.h是頭文件,我們后續(xù)章節(jié)會講到?,F(xiàn)在我們就給這個文件取名叫sum.c吧,當(dāng)然你也可以叫test.c,aaa.c等等,什么名字都可以,只要擴(kuò)展名是.c就可以。但是,我還是強(qiáng)烈建議大家給文件取一個能顧名思義的名字,這樣更便于維護(hù),當(dāng)有很多.c文件時候,你看一眼名字就知道這個文件是完成什么功能的。給這個文件取名叫sum.c也是因為sum是求和的意思。

程序編寫完畢,進(jìn)行第三步——對sum.c文件進(jìn)行編譯。為什么要編譯?因為計算機(jī)不像人類,可以認(rèn)知很多事物,它只認(rèn)識兩個數(shù)字:0和1。有的朋友說,計算機(jī)也能認(rèn)識圖片和視頻呀?事實上,圖片和視頻也是通過轉(zhuǎn)換成一串一串的0和1才會被計算機(jī)識別的。所以,編譯就是把我們認(rèn)識的c語言程序代碼轉(zhuǎn)換成計算機(jī)能認(rèn)識的一串串0和1組成的編碼。

編譯是在編譯環(huán)境中進(jìn)行的。工程上比較常用的編譯環(huán)境就是linux系統(tǒng)??赡苡械呐笥褯]有接觸過linux系統(tǒng),其實它和windows系統(tǒng)一樣,也是一種軟件操作系統(tǒng)。很多版本的linux系統(tǒng)都自帶編譯工具,我們把編譯工具通俗地稱為編譯器。為了編譯,我們需要把sum.c導(dǎo)入到linux系統(tǒng)里。當(dāng)然,你也可以用任何一種編譯工具來編譯,比如visual studio, 或者dev c++,只要它有編譯的功能就可以。這里只用linux系統(tǒng)舉例。

linux系統(tǒng)編譯器依靠這條編譯命令對sum.c進(jìn)行編譯:gcc -o sum sum.c。這條命令是什么意思呢?它的意思是使程序文件sum.c通過編譯生成一個可執(zhí)行文件,這個可執(zhí)行文件的名字叫sum。當(dāng)然你也可以給它取任意其他的名字,這個名字在-o后面指定。朋友們不必花時間學(xué)習(xí)這個命令,這里只是為了說明編譯的過程,大家只需要知道sum.c文件可以通過編譯生成一個可執(zhí)行文件就可以了。

第四步——運(yùn)行科執(zhí)行程序。簡單來說,我們要完成一個功能,其實就是想得到這個功能的可執(zhí)行程序。顧名思義,可執(zhí)行程序,就是可以執(zhí)行的程序。事實上,這個可執(zhí)行程序也和sum.c一樣,就是一個文件而已,只是它能夠被計算機(jī)執(zhí)行。第三步我們已經(jīng)通過編譯sum.c文件生成了可執(zhí)行程序sum,執(zhí)行一下sum文件我們就能看到結(jié)果了,其結(jié)果就是在屏幕上顯示:sum = 5050. 。

到這里,我們就完成了自然數(shù)1到100求和這個功能的全部過程。

前面的文章中我提到過用在線集成開發(fā)環(huán)境codeground來編輯、編譯和運(yùn)行c語言程序,現(xiàn)在請朋友們思考一下,用codeground IDE實現(xiàn)某個功能時,都經(jīng)過了哪些過程?

C語言一個功能的實現(xiàn)過程

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

    關(guān)注

    4

    文章

    3553

    瀏覽量

    88989
  • C語言
    +關(guān)注

    關(guān)注

    180

    文章

    7613

    瀏覽量

    137247
收藏 人收藏

    評論

    相關(guān)推薦

    AKI跨語言調(diào)用庫神助攻C/C++代碼遷移至HarmonyOS NEXT

    /C++代碼快速遷移至HarmonyOS NEXT。憑借卓越的兼容性,AKI已成為廠商與開發(fā)者打造鴻蒙原生應(yīng)用過程中廣泛使用的跨語言調(diào)用解決方案。 AKI是款專為鴻蒙原生開發(fā)設(shè)計的
    發(fā)表于 01-02 17:08

    使用C語言實現(xiàn)函數(shù)模板

      用C語言能不能實現(xiàn)通用的函數(shù),既能完成整數(shù)的相加,又能完成浮點數(shù)的相加?
    的頭像 發(fā)表于 11-09 11:38 ?427次閱讀

    C語言中的socket編程基礎(chǔ)

    Socket編程簡介 Socket是種通信機(jī)制,允許程序之間進(jìn)行通信。在C語言中,socket編程是網(wǎng)絡(luò)編程的基礎(chǔ)。通過使用socket,程序可以發(fā)送和接收數(shù)據(jù),實現(xiàn)不同計算機(jī)之間的
    的頭像 發(fā)表于 11-01 16:51 ?386次閱讀

    C語言生成可執(zhí)行二進(jìn)制文件的具體過程

    C語言源碼到生成可執(zhí)行文件的過程通常包括預(yù)處理(Preprocessing)、編譯(Compilation)、匯編(Assembly)、鏈接(Linking)等多個步驟,每個步驟都有其特定的任務(wù)
    的頭像 發(fā)表于 10-21 14:30 ?630次閱讀
    <b class='flag-5'>C</b><b class='flag-5'>語言</b>生成可執(zhí)行二進(jìn)制文件的具體<b class='flag-5'>過程</b>

    Transformer語言模型簡介與實現(xiàn)過程

    任務(wù),隨后迅速擴(kuò)展到其他NLP任務(wù)中,如文本生成、語言理解、問答系統(tǒng)等。本文將詳細(xì)介紹Transformer語言模型的原理、特點、優(yōu)勢以及實現(xiàn)過程。
    的頭像 發(fā)表于 07-10 11:48 ?1962次閱讀

    如何用C語言實現(xiàn)高效查找(二分法)

    今天給分享下使用C語言實現(xiàn)二分算法,主要包含以下幾部分內(nèi)容:二分查找算法介紹二分查找算法使用場景二分查找算法代碼實現(xiàn)二分查找算法實現(xiàn)
    的頭像 發(fā)表于 06-04 08:04 ?1208次閱讀
    如何用<b class='flag-5'>C</b><b class='flag-5'>語言實現(xiàn)</b>高效查找(二分法)

    使用C語言實現(xiàn)的CRC計算單元的例子

    使用C語言實現(xiàn)的CRC計算單元的例子
    的頭像 發(fā)表于 05-16 16:16 ?1035次閱讀

    C語言中,同一個函數(shù)能不能被定義兩次?

    稍微有點C語言基礎(chǔ)的同學(xué),定知道不能這樣做。
    的頭像 發(fā)表于 05-11 18:27 ?1807次閱讀

    嵌入式中C語言結(jié)構(gòu)體基本實現(xiàn)

    C語言中的數(shù)組只能允許程序員定義存儲相同類型數(shù)據(jù)。但是結(jié)構(gòu)是C語言編程中允許您存儲不同數(shù)據(jù)類型的數(shù)據(jù)。 結(jié)構(gòu)體的定義 ????要想定義結(jié)構(gòu),必須用到 struct 關(guān)鍵字,struct
    的頭像 發(fā)表于 05-11 08:49 ?1096次閱讀
    嵌入式中<b class='flag-5'>C</b><b class='flag-5'>語言</b>結(jié)構(gòu)體基本<b class='flag-5'>實現(xiàn)</b>

    AWTK 開源串口屏開發(fā)(18) - 用 C 語言自定義命令

    編寫代碼即可實現(xiàn)常見的應(yīng)用。但是,有時候我們需要自定義些命令,以實現(xiàn)些特殊的功能。本文檔介紹如何使用
    的頭像 發(fā)表于 05-11 08:24 ?467次閱讀
    AWTK 開源串口屏開發(fā)(18) - 用 <b class='flag-5'>C</b> <b class='flag-5'>語言</b>自定義命令

    C語言實現(xiàn)Web參數(shù)傳遞

    電子發(fā)燒友網(wǎng)站提供《C語言實現(xiàn)Web參數(shù)傳遞.docx》資料免費(fèi)下載
    發(fā)表于 03-24 09:14 ?2次下載

    fpga語言是什么?fpga語言c語言的區(qū)別

    功能,從而實現(xiàn)對數(shù)字電路的高效定制。FPGA語言主要包括VHDL(VHSIC Hardware Description Language)和Verilog等,這些語言具有強(qiáng)大的描述能力
    的頭像 發(fā)表于 03-15 14:50 ?976次閱讀

    plc編程語言c語言的聯(lián)系 c語言和PLC有什么區(qū)別

    PLC編程語言C語言的聯(lián)系 PLC(可編程邏輯控制器)是種針對自動化控制系統(tǒng)的特殊計算機(jī)。PLC編程語言是為了控制和管理自動化生產(chǎn)
    的頭像 發(fā)表于 02-05 14:21 ?4278次閱讀

    c語言,c++,java,python區(qū)別

    操作系統(tǒng)、嵌入式系統(tǒng)等對性能要求較高的場景。C語言的語法相對簡單,學(xué)習(xí)曲線較平緩,也是學(xué)習(xí)其他高級語言的入門語言C++:
    的頭像 發(fā)表于 02-05 14:11 ?2505次閱讀

    vb語言c++語言的區(qū)別

    Microsoft開發(fā)的種面向?qū)ο蟮氖录?qū)動編程語言。它的設(shè)計目標(biāo)是簡化編程過程,讓初學(xué)者也能快速上手。與之相比,C++語言
    的頭像 發(fā)表于 02-01 10:20 ?2414次閱讀