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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


    推薦閱讀:

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

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

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

    通知消息的圖片

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