HOME 首頁
SERVICE 服務(wù)產(chǎn)品
XINMEITI 新媒體代運(yùn)營(yíng)
CASE 服務(wù)案例
NEWS 熱點(diǎn)資訊
ABOUT 關(guān)于我們
CONTACT 聯(lián)系我們
創(chuàng)意嶺
讓品牌有溫度、有情感
專注品牌策劃15年

    c語言生成可執(zhí)行程序的過程(c語言生成可執(zhí)行程序的過程包括)

    發(fā)布時(shí)間:2023-05-22 08:56:17     稿源: 創(chuàng)意嶺    閱讀: 89        

    大家好!今天讓創(chuàng)意嶺的小編來大家介紹下關(guān)于c語言生成可執(zhí)行程序的過程的問題,以下是小編對(duì)此問題的歸納整理,讓我們一起來看看吧。jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

    開始之前先推薦一個(gè)非常厲害的Ai人工智能工具,一鍵生成原創(chuàng)文章、方案、文案、工作計(jì)劃、工作報(bào)告、論文、代碼、作文、做題和對(duì)話答疑等等jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

    只需要輸入關(guān)鍵詞,就能返回你想要的內(nèi)容,有小程序、在線網(wǎng)頁版、PC客戶端和批量生成器jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

    官網(wǎng):https://ai.de1919.comjmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

    本文目錄:jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

    c語言生成可執(zhí)行程序的過程(c語言生成可執(zhí)行程序的過程包括)jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

    開發(fā)一個(gè)c語言程序要經(jīng)過哪四個(gè)步驟jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

    開發(fā)一個(gè)C語言程序需要經(jīng)過的四個(gè)步驟:編輯、編譯、連接、運(yùn)行。jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

    C語言程序可以使用在任意架構(gòu)的處理器上,只要那種架構(gòu)的處理器具有對(duì)應(yīng)的C語言編譯器和庫,然后將C源代碼編譯、連接成目標(biāo)二進(jìn)制文件之后即可運(yùn)行。jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

    1、預(yù)處理:輸入源程序并保存(.C文件)。jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

    2、編譯:將源程序翻譯為目標(biāo)文件(.OBJ文件)。jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

    3、鏈接:將目標(biāo)文件生成可執(zhí)行文件(.EXE文件)。jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

    4、運(yùn)行:執(zhí)行.EXE文件,得到運(yùn)行結(jié)果。jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

    擴(kuò)展資料:jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

    C語言代碼變?yōu)槌绦虻膸讉€(gè)階段:jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

    1、首先是源代碼文件test.c和相關(guān)的頭文件,如stdio.h等被預(yù)處理器cpp預(yù)處理成一個(gè).i文件。經(jīng)過預(yù)編譯后的.i文件不包含任何宏定義,因?yàn)樗械暮暌呀?jīng)被展開,并且包含的文件也已經(jīng)被插入到.i文件中。jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

    2、編譯過程就是把預(yù)處理完的文件進(jìn)行一系列的詞法分析、語法分析、語義分析以及優(yōu)化后產(chǎn)生相應(yīng)的匯編代碼文件,這個(gè)過程往往是我們所說的整個(gè)程序的構(gòu)建的核心部分,也是最復(fù)雜的部分之一。jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

    3、匯編器不直接輸出可執(zhí)行文件而是輸出一個(gè)目標(biāo)文件,匯編器可以調(diào)用ld產(chǎn)生一個(gè)能夠運(yùn)行的可執(zhí)行程序。即需要將一大堆文件鏈接起來才可以得到“a.out”,即最終的可執(zhí)行文件。jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

    4、在鏈接過程中,對(duì)其他定義在目標(biāo)文件中的函數(shù)調(diào)用的指令需要被重新調(diào)整,對(duì)實(shí)用其他定義在其他目標(biāo)文件的變量來說,也存在同樣問題。jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

    參考資料來源:百度百科-c語言
    jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

    在C語言中,完成C源文件編輯后到生成執(zhí)行文件的步驟是什么?jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

    在C語言中,完成C源文件編輯后到生成執(zhí)行文件的步驟是:jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

      預(yù)編譯jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

      處理有#標(biāo)識(shí)的代碼,如將include的文件進(jìn)行拷貝、#define的條件編譯等等!
      jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

      編譯jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

      編譯就是將第一階段處理得到的文件通過詞法語法分析等轉(zhuǎn)換為匯編,對(duì)目標(biāo)代碼的生成進(jìn)行的優(yōu)化,翻譯成機(jī)器指令。生成的文件叫目標(biāo)文件。jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

      鏈接jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

      把目標(biāo)文件和所需要的庫,鏈接成為可執(zhí)行文件。
      jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

    c語言可執(zhí)行程序文件是通過()和()生成的?jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

    源程序文件不是可執(zhí)行文件。 C源程序文件是一種文本文件,它首先需要編譯器去編譯成目標(biāo)文件,在通過鏈接器鏈接庫代碼才能形成可執(zhí)行的二進(jìn)制exe文件。每一個(gè)C語言程序必須要經(jīng)過編譯和鏈接才能被計(jì)算機(jī)執(zhí)行,編譯是將C源碼翻譯成機(jī)器碼,鏈接是將將二進(jìn)制目標(biāo)文件裝配成一個(gè)具有特定格式的二進(jìn)制可執(zhí)行文件,比如Windows平臺(tái)上是PE格式,一般以.exe為擴(kuò)展名。 一個(gè)C語言程序從源碼到計(jì)算機(jī)系統(tǒng)可以執(zhí)行,更細(xì)致的劃分為:預(yù)處理——編譯——匯編——鏈接。預(yù)處理是對(duì)C語言源碼進(jìn)行文本處理,編譯階斷是將C源碼經(jīng)C編譯器生成匯編代碼,匯編階斷是將匯編代碼經(jīng)匯編器生成二進(jìn)制機(jī)器碼文件。這兩個(gè)合攏起來,籠統(tǒng)的可以叫做編譯階斷。語言是一門計(jì)算機(jī)語言,有自己一定的語法。但是,C語言并不能直接被對(duì)象所理解,需要將C語言轉(zhuǎn)變成可執(zhí)行代碼,即二進(jìn)制代碼。在C語言轉(zhuǎn)變成二進(jìn)制可執(zhí)行代碼時(shí),是以工程為單位的。而一個(gè)工程中往往會(huì)包含多個(gè)C文件。因此,需要將每個(gè)C文件都編譯成二進(jìn)制代碼。此時(shí),每個(gè)C文件所對(duì)應(yīng)的二進(jìn)制代碼是獨(dú)立的。由于工程是一個(gè)系統(tǒng),所以需要將所有的C文件二進(jìn)制代碼鏈接到一起,形成一個(gè)工程的可執(zhí)行文件。 綜上,編譯和鏈接就是指的將C文件轉(zhuǎn)變成二進(jìn)制代碼,并將各個(gè)獨(dú)立的C文件二進(jìn)制代碼鏈接到一起,形成一個(gè)可執(zhí)行文件的過程。

    c語言生成可執(zhí)行程序的過程(c語言生成可執(zhí)行程序的過程包括)jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

    c語言是怎樣編譯成可執(zhí)行文件的?jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

    c語言運(yùn)行方式如下:
    上機(jī)輸入和編譯源程序。通過鍵盤向計(jì)算機(jī)輸入程序,最后將此源程序以文件形式存放在文件夾內(nèi),文件用.c作為后綴,生成源程序文件。對(duì)源程序進(jìn)行編譯,先用c編譯系統(tǒng)提供的“預(yù)處理器”對(duì)程序中的預(yù)處理指令進(jìn)行編譯預(yù)處理。例如,對(duì)于#include指令來說,就是將stdio.h頭文件的內(nèi)容讀進(jìn)來,取代#include行。由預(yù)處理得到的信息與程序其他部分一起組成一個(gè)完整的、可以用來正式編譯的源程序,然后由編譯系統(tǒng)對(duì)該源程序進(jìn)行編譯。
    編譯的作用是對(duì)源程序進(jìn)行檢查,判定程序有無語法的錯(cuò)誤。直到?jīng)]有錯(cuò)誤時(shí),編譯程序自動(dòng)把源程序轉(zhuǎn)換為二進(jìn)制形式的目標(biāo)程序進(jìn)行連接處理。經(jīng)過編譯后所得到的二進(jìn)制目標(biāo)文件還不能供計(jì)算機(jī)直接執(zhí)行。一個(gè)程序可能包含若干個(gè)源程序文件,而一次編譯只能得到與一個(gè)源程序文件相對(duì)應(yīng)的目標(biāo)文件,
    只是程序的一部分,必須把所有編譯后得到的目標(biāo)文件鏈接裝配起來,再與函數(shù)庫相連接成一個(gè)整體,生成一個(gè)可供計(jì)算機(jī)執(zhí)行的目標(biāo)程序,稱為可執(zhí)行程序,即使一個(gè)程序只包含一個(gè)源文件,編譯后得到的目標(biāo)程序也不能直接運(yùn)行,也要經(jīng)過連接階段,因?yàn)橐秃瘮?shù)庫進(jìn)行連接,才能生成可執(zhí)行程序。運(yùn)行可執(zhí)行程序,得到運(yùn)行結(jié)果。把f.exe輸入計(jì)算機(jī),并使之運(yùn)行,得到結(jié)果。

    一個(gè)源程序(.c)變成可執(zhí)行(.exe)文件要經(jīng)過幾個(gè)步驟?詳細(xì)一點(diǎn)jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司

    以GCC編譯器為例,可以分為四步。
    第一步是預(yù)處理,包括語法檢查等工作。
    gcc
    -P
    abc.c
    第二步由源程序生產(chǎn)匯編語言代碼。
    gcc
    -S
    abc.c
    會(huì)生成abc.s文件,這個(gè)文件里就是匯編代碼。
    第三步編譯器生成目標(biāo)代碼,一個(gè)源文件生成一個(gè)目標(biāo)代碼。
    gcc
    -c
    abc.c
    會(huì)生成abc.o
    第四步連接器從目標(biāo)代碼生成可執(zhí)行文件。
    目標(biāo)代碼包括機(jī)器碼和符號(hào)表(函數(shù)及變量名)。連接器的主要作用是通過符號(hào)表在庫文件和其他模塊中找到在目標(biāo)代碼中引入或未定義的符號(hào)(函數(shù)及變量名),將幾個(gè)目標(biāo)代碼合成可執(zhí)行文件。

    以上就是關(guān)于c語言生成可執(zhí)行程序的過程相關(guān)問題的回答。希望能幫到你,如有更多相關(guān)問題,您也可以聯(lián)系我們的客服進(jìn)行咨詢,客服也會(huì)為您講解更多精彩的知識(shí)和內(nèi)容。jmb創(chuàng)意嶺 - 安心托付、值得信賴的品牌設(shè)計(jì)、營(yíng)銷策劃公司


    推薦閱讀:

    神器搜索(c語言搜題神器)

    黑客入侵是靠C語言嗎(黑客入侵是靠c語言嗎知乎)

    課程設(shè)計(jì)的心得(C語言課程設(shè)計(jì)的心得)

    通知消息的圖片

    杭州有名電子廠有那些(杭州有名的電子廠都有哪些)