-
當(dāng)前位置:首頁 > 創(chuàng)意學(xué)院 > 營銷推廣 > 專題列表 > 正文
- C語言源程序文件的后綴是什么,經(jīng)過編譯后生成文件的后綴是什么?經(jīng)過連接后生成文件的后綴是什么?
- C語言源程序文件名的后綴是.OBJ,經(jīng)過編譯后,生成文件的后綴是什么?經(jīng)過連接后,生成文件的后綴是什么?
- C語言源程序文件的后綴是什么,經(jīng)過編譯后生成文件的后綴是什么?經(jīng)過連接后生成文件的后綴是什么?
- 計(jì)算機(jī)程序中,用高級(jí)語言編寫的程序經(jīng)編譯后產(chǎn)生的程序叫什么?
- 用高級(jí)語言編寫的源程序,經(jīng)編譯后產(chǎn)生的是?
源程序經(jīng)過編譯后生成(源程序經(jīng)過編譯后生成的目標(biāo)程序)
大家好!今天讓創(chuàng)意嶺的小編來大家介紹下關(guān)于源程序經(jīng)過編譯后生成的問題,以下是小編對(duì)此問題的歸納整理,讓我們一起來看看吧。
開始之前先推薦一個(gè)非常厲害的Ai人工智能工具,一鍵生成原創(chuàng)文章、方案、文案、工作計(jì)劃、工作報(bào)告、論文、代碼、作文、做題和對(duì)話答疑等等
只需要輸入關(guān)鍵詞,就能返回你想要的內(nèi)容,有小程序、在線網(wǎng)頁版、PC客戶端和批量生成器
官網(wǎng):https://ai.de1919.com。
本文目錄:
C語言源程序文件的后綴是什么,經(jīng)過編譯后生成文件的后綴是什么?經(jīng)過連接后生成文件的后綴是什么?
C語言源文件后綴名是.c,編譯生成的文件后綴名是.obj,連接后可執(zhí)行文件的后綴名是.exe。
源文件的后綴僅僅是為了表明該文件中保存的是某種語言的代碼(例如.c文件中保存的是C語言代碼),這樣程序員更加容易區(qū)分,編譯器也更加容易識(shí)別,它并不會(huì)導(dǎo)致該文件的內(nèi)部格式發(fā)生改變。
擴(kuò)展資料
C語言是一種結(jié)構(gòu)化語言,它有著清晰的層次,可按照模塊的方式對(duì)程序進(jìn)行編寫,十分有利于程序的調(diào)試,且c語言的處理和表現(xiàn)能力都非常的強(qiáng)大。
依靠非常全面的運(yùn)算符和多樣的數(shù)據(jù)類型,可以輕易完成各種數(shù)據(jù)結(jié)構(gòu)的構(gòu)建,通過指針類型更可對(duì)內(nèi)存直接尋址以及對(duì)硬件進(jìn)行直接操作,因此既能夠用于開發(fā)系統(tǒng)程序,也可用于開發(fā)應(yīng)用軟件。
C語言是普適性最強(qiáng)的一種計(jì)算機(jī)程序編輯語言,它不僅可以發(fā)揮出高級(jí)編程語言的功用,還具有匯編語言的優(yōu)點(diǎn)。
C語言源程序文件名的后綴是.OBJ,經(jīng)過編譯后,生成文件的后綴是什么?經(jīng)過連接后,生成文件的后綴是什么?
C語言源程序文件名的后綴是.c。C源程序經(jīng)過C編譯程序編譯之后生成一個(gè)后綴為.OBJ的二進(jìn)制文件,
然后由稱為“連接程序”的軟件,把此.OBJ文件與C語言提供的各種庫函數(shù)連接起來生成一個(gè)后綴為.EXE的可執(zhí)行文件。
由高級(jí)語言編寫的程序稱為“源程序”,把由二進(jìn)制代碼表示的程序稱為“目標(biāo)程序”。為了把源程序轉(zhuǎn)換成機(jī)器能接受的目標(biāo)程序,這時(shí)我們需要具有翻譯功能的軟件--“編譯程序”。每種高級(jí)語言都有與它對(duì)應(yīng)的編譯程序。
擴(kuò)展資料
1、目標(biāo)文件的擴(kuò)展名為“.obj”(Windows)或“.o”(Linux)。目標(biāo)文件已經(jīng)是機(jī)器指令,但還不能運(yùn)行,因?yàn)槟繕?biāo)文件還沒有解決函數(shù)調(diào)用問題。
2、可執(zhí)行文件的擴(kuò)展名為“.exe“。
C語言源程序文件的后綴是什么,經(jīng)過編譯后生成文件的后綴是什么?經(jīng)過連接后生成文件的后綴是什么?
程序文件名的后綴是.c,經(jīng)過編譯后是.obj,經(jīng)過連接后是.exe。
xx.h文件.h中一般放的是同名.c文件中定義的變量、數(shù)組、函數(shù)的聲明,需要讓.c外部使用的聲明。
xx.c文件.c文件一般放的是變量、數(shù)組、函數(shù)的具體定義。
1、頭文件的預(yù)編譯,預(yù)處理。
編譯器在編譯源代碼時(shí),會(huì)先編譯頭文件,保證每個(gè)頭文件只被編譯一次。
在預(yù)處理階段,編譯器將c文件中引用的頭文件中的內(nèi)容全部寫到c文件中。
2、詞法和語法分析(查錯(cuò))。
3、編譯(匯編代碼,.obj文件)。
轉(zhuǎn)化為匯編碼,這種文件稱為目標(biāo)文件。后綴為.obj。
4、鏈接(二進(jìn)制機(jī)器碼,.exe文件)。
將匯編代碼轉(zhuǎn)換為機(jī)器碼,生成可執(zhí)行文件。
擴(kuò)展資料
注意事項(xiàng)
在編譯過程中.h文件中的所有內(nèi)容會(huì)被寫到包含它的.c文件中,而所有的.c文件以一個(gè)共同的main函數(shù)作為可執(zhí)行程序的入口。
在.h文件中編寫函數(shù)實(shí)現(xiàn)依然可以正常編譯執(zhí)行,相當(dāng)于所有.h的內(nèi)容最后都被寫到了main.c文件中。
但是為了邏輯性、易于維護(hù)性以及一些其他目的,一般在.h文件中寫函數(shù)的聲明,在.c文件中編寫函數(shù)的實(shí)現(xiàn)。
計(jì)算機(jī)程序中,用高級(jí)語言編寫的程序經(jīng)編譯后產(chǎn)生的程序叫什么?
高級(jí)語言編寫的代碼經(jīng)過編譯后就是可執(zhí)行程序,高級(jí)語言到可執(zhí)行文件主要有七個(gè)個(gè)過程。高級(jí)語言編譯的七個(gè)過程:
預(yù)處理,詞法分析,語法分析,語義分析,中間代碼產(chǎn)生,代碼優(yōu)化,目標(biāo)代碼產(chǎn)生。
下面對(duì)這幾個(gè)過程詳細(xì)講解:
1、預(yù)處理:
對(duì)原文件進(jìn)行預(yù)處理,比如頭文件,導(dǎo)入的模塊,宏定義等進(jìn)行處理;
2、詞法分析:
詞法分析是第一階段,這個(gè)階段的任務(wù)是從左到右一個(gè)字符一個(gè)字符的讀入源程序,對(duì)構(gòu)成源程序的字符流進(jìn)行掃描和分解,從而識(shí)別出一個(gè)個(gè)單詞。
3、語法分析:
語法分析的任務(wù)是在詞法分析的基礎(chǔ)上將單詞程序分解成各位語法短語。
4、語義分析:
語義分析是審查源程序有無語義錯(cuò)誤,為代碼生成階段收集類型信息。
5、中間代碼生成:
在進(jìn)行了上述的語法分析階段等工作之后,有的編譯程序?qū)⒃闯绦蜃兂梢环N內(nèi)部表示形式,這種內(nèi)部表示形式叫做中間語言或中間代碼。中間代碼生成階段要在語法和語義分析的基礎(chǔ)上,將源程序進(jìn)一步變?yōu)橐环N內(nèi)部表示形式,它通常易于生成、易于翻譯成目標(biāo)代碼,不過不是所有的語言都必須經(jīng)過這一步。
6、代碼優(yōu)化:
這一階段的任務(wù)是對(duì)前一階段產(chǎn)生的中間代碼進(jìn)行變換或進(jìn)行改造,目的是使生成的目標(biāo)代碼更為高效。代碼優(yōu)化階段,對(duì)前階段生成的中間代碼進(jìn)行變換或改造,以便生成目標(biāo)代碼時(shí)更加節(jié)省時(shí)間和空間,這一工作也不是必須的。
7、目標(biāo)代碼生成:
這一階段的任務(wù)是吧中間代碼變換成特定機(jī)器上的絕對(duì)指令代碼或可重定位的指令代碼或匯編指令代碼。
用高級(jí)語言編寫的源程序,經(jīng)編譯后產(chǎn)生的是?
目標(biāo)程序。
目標(biāo)程序,又稱為“目的程序”,為源程序經(jīng)編譯可直接被計(jì)算機(jī)運(yùn)行的機(jī)器碼集合,在計(jì)算機(jī)文件上以.obj作擴(kuò)展名----由語言處理程序(匯編程序,編譯程序,解釋程序)將源程序處理(匯編,編譯,解釋)成與之等價(jià)的由機(jī)器碼構(gòu)成的,計(jì)算機(jī)能夠直接運(yùn)行的程序,該程序叫目標(biāo)程序。
目標(biāo)代碼盡管已經(jīng)是機(jī)器指令,但是還不能運(yùn)行,因?yàn)槟繕?biāo)程序還沒有解決函數(shù)調(diào)用問題,需要將各個(gè)目標(biāo)程序與庫函數(shù)連接,才能形成完整的可執(zhí)行程序。
擴(kuò)展資料
計(jì)算機(jī)并不能直接地接受和執(zhí)行用高級(jí)語言編寫的源程序,源程序在輸入計(jì)算機(jī)時(shí),通過"翻譯程序"翻譯成機(jī)器語言形式的目標(biāo)程序,計(jì)算機(jī)才能識(shí)別和執(zhí)行。這種"翻譯"通常有兩種方式,即編譯方式和解釋方式。
編譯方式是指利用事先編好的一個(gè)稱為編譯程序的機(jī)器語言程序,作為系統(tǒng)軟件存放在計(jì)算機(jī)內(nèi),當(dāng)用戶將高級(jí)語言編寫的源程序輸入計(jì)算機(jī)后,編譯程序便把源程序整個(gè)地翻譯成用機(jī)器語言表示的與之等價(jià)的目標(biāo)程序。
然后計(jì)算機(jī)再執(zhí)行該目標(biāo)程序,以完成源程序要處理的運(yùn)算并取得結(jié)果。解釋方式是指源程序進(jìn)入計(jì)算機(jī)后,解釋程序邊掃描邊解釋,逐句輸入逐句翻譯。
計(jì)算機(jī)一句句執(zhí)行,并不產(chǎn)生目標(biāo)程序。如PASCAL、FORTRAN、COBOL等高級(jí)語言執(zhí)行編譯方式;BASIC語言則以執(zhí)行解釋方式為主;而PASCAL、C語言是能書寫編譯程序的高級(jí)程序設(shè)計(jì)語言。
以上就是關(guān)于源程序經(jīng)過編譯后生成相關(guān)問題的回答。希望能幫到你,如有更多相關(guān)問題,您也可以聯(lián)系我們的客服進(jìn)行咨詢,客服也會(huì)為您講解更多精彩的知識(shí)和內(nèi)容。
推薦閱讀:
虛擬示波器設(shè)計(jì)vi源程序(虛擬示波器的設(shè)計(jì))
源程序經(jīng)過編譯后生成(源程序經(jīng)過編譯后生成的目標(biāo)程序)
如何查看logo圖案是否可以注冊(cè)(如何查看logo圖案是否可以注冊(cè)公司)