當前位置:首頁 » 編程語言 » c語言可執行文件怎麼確定
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言可執行文件怎麼確定

發布時間: 2022-07-11 04:24:14

c語言編譯流程(c語言是如何變成可執行文件的)

1.預編譯,把源代碼中的宏展開並把包含的文件的源代碼插入程序的源代碼中.
2.編譯,把源代碼編譯成二進制的目標文件.但是此時目標文件還是不可執行的.
3.匯編,這一步主要是處理源代碼中的匯編代碼
4.連接,把目標代碼和二進制的庫文件以及其它內容合並成最終的可執行文件.

⑵ 在c語言中「可執行程序」是什麼意思

編寫的代碼經過編譯和連接轉為可執行文件的過程。

對於可執行文件中的函數調用,可分別採用動態鏈接或靜態鏈接的方法。使用動態鏈接能夠使最終的可執行文件比較短小,並且當共享對象被多個進程使用時能節約一些內存,因為在內存中只需要保存一份此共享對象的代碼。

但並不是使用動態鏈接就一定比使用靜態鏈接要優越。在某些情況下動態鏈接可能帶來一些性能上損害。

源代碼-->預處理-->編譯-->優化-->匯編-->鏈接-->可執行文件

(2)c語言可執行文件怎麼確定擴展閱讀:

(1)靜態鏈接在這種鏈接方式下,函數的代碼將從其所在地靜態鏈接庫中被拷貝到最終的可執行程序中。這樣該程序在被執行時這些代碼將被裝入到該進程的虛擬地址空間中。

靜態鏈接庫實際上是一個目標文件的集合,其中的每個文件含有庫中的一個或者一組相關函數的代碼。(個人備註:靜態鏈接將鏈接庫的代碼復制到可執行程序中,使得可執行程序體積變大)

(2)動態鏈接在此種方式下,函數的代碼被放到稱作是動態鏈接庫或共享對象的某個目標文件中。鏈接程序此時所作的只是在最終的可執行程序中記錄下共享對象的名字以及其它少量的登記信息。

在此可執行文件被執行時,動態鏈接庫的全部內容將被映射到運行時相應進程的虛地址空間。動態鏈接程序將根據可執行程序中記錄的信息找到相應的函數代碼。

(個人備註:動態鏈接指的是需要鏈接的代碼放到一個共享對象中,共享對象映射到進程虛地址空間,鏈接程序記錄可執行程序將來需要用的代碼信息,根據這些信息迅速定位相應的代碼片段。)

⑶ C語言編寫好代碼後,怎麼編譯,最後生成可執行文件

材料/工具:vc6.0

1、打開c語言編輯工具,在工具中寫入程序的源代碼。

⑷ c語言源程序文件,目標文件,和可執行文件的擴展名是什麼

根據平台不同,擴展名也有所不同:
1、源程序。
在各個平台上,C語言的源程序擴展名都是相同的,即c。 比如test.c等。
C++的源程序則是cpp。
2、目標文件。
目標文件是源程序經過編譯生成的文件,平台不同,編譯工具不同生成的目標文件擴展名也不同。 在windows上比較常見的為obj, 在Linux下比較常見的為o。另外還有一些比較少見的擴展名,如oo, tco等。
3、可執行文件。
可執行文件是目標文件經過鏈接後,產生的用於運行的文件。
在windows下可執行文件擴展名為exe。
在Linux下可執行文件沒有固定的擴展名,在編譯時默認為out,但實際上可以是任意擴展名甚至沒有擴展名,只要有執行許可權即可。

⑸ C語言中,目標文件是如何變成可執行文件的

用開發工具VC++,源代碼編譯後生成目標文件xxx.obj,然後經過鏈接變成可執行程序xxx.exe,用VC++的話,在你工程的存儲路徑下有一個Debug文件夾,裡面存放的就是可執行程序exe。你每次運行的時候,運行的就是這個exe文件。

⑹ 我寫了一段C語言代碼怎麼把他做成可執行文件

如果是單獨的一段簡單的代碼
可以新建
一個
文件
C
什麼的
這里輸入名字的時候
一定要輸入
.c
然後直接編譯
就可以了

⑺ c語言可執行程序文件是通過()和()生成的

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

⑻ C語言代碼怎麼變成的可執行文件

正確的C語言源程序,經過編譯後,會生成.EXE可執行文件。

⑼ c語言:exe(可執行文件)是如何被執行的

.exe--是可在操作系統存儲空間中浮動定位的可執行程序
.c文件生成.exe文件的過程,經歷了預處理,編譯,匯編,鏈接,這四個過程
1.預處理--主要處理源代碼中的預處理指令,引入頭文件,去除注釋,處理所有的條件編譯指令,宏的替換,添加行號,保留所有的編譯器指令。(生成.i文件)
2.編譯--進行的是對預處理後的文件進行語法分析,詞法分析,語義分析,符號匯總,然後生成匯編代碼。(生成.s文件)
3.匯編--將匯編代碼轉成二進制文件,二進制文件就可以讓機器來讀取。(生成一個重定位目標文件,linux下是.o文件,windows下是.obj文件)
4.鏈接--合並段表,然後把符號表合並並且對符號表進行重定位。

⑽ 用vc6怎樣生成c語言的可執行文件

visul c++ 6.0運行c程序,要建一個正確的工程,然後建立一個正確的文本文檔,然後運行。
1、建工程:打開c++,新建,選擇Win32 Console Application,填上工程名字和保存路徑,確定後選擇「建立一個空工程」,確定後完成該步。
2、建文檔:完成上步後。在左面的對話框中便會顯示你的工程名字,此時再點擊左上方的文件-->新建,選擇C++ Source File,右面輸入文件名字,點擊確定。
3、程序部分:因為是c語言,頭文件必須包含std庫,加入#include<stdio.h>,然後可以用c語言編寫。
4、編譯程序:點工具欄里的「組建」,選擇「全部重建」,如果有任何對話框提示,全點擊ok或者確定,這包括編譯過程,如果有錯誤,系統會在下面對話框提示。
5、執行程序:如果編譯通過,點擊上面的「!」號即可執行程序了,也可選擇「組建」里的「執行」,效果是一樣的。