c編譯後產生的文件
c語言編譯生成的.obj文件是一種文本文件,程序編譯時生成的中間代碼文件目標文件,一般是程序編譯後的二進制文件,再通過鏈接器和資源文件鏈接就成可執行文件了。OBJ只給出了程序的相對地址,而可執行文件是絕對地址。
obj文件基本結構:OBJ文件不需要任何種文件頭(File Header),盡管經常使用幾行文件信息的注釋作為文件的開頭。
OBJ文件由一行行文本組成,注釋行以符號「#」為開頭,空格和空行可以隨意加到文件中以增加文件的可讀性。有字的行都由一兩個標記字母也就是關鍵字(Keyword)開頭,關鍵字可以說明這一行是什麼樣的數據。
(1)c編譯後產生的文件擴展閱讀:
C編譯的整個過程很復雜,大致可以分為以下階段:
1、預處理階段
在該階段主要完成對源代碼的預處理工作,主要包括對宏定義指令,頭文件包含指令,預定義指令和特殊字元的處理,如對宏定義的替換以及文件頭中所包含的文件中預定義代碼的替換等,總之這步主要完成一些替換工作,輸出是同源文件含義相同但內容不同的文件。
2、編譯、優化階段
編譯就是將第一階段處理得到的文件通過詞法語法分析等轉換為匯編語言。優化包括對中間代碼的優化,如刪除公共表達式,循環優化等;和對目標代碼的生成進行的優化,如如何充分利用機器的寄存器存放有關變數的值,以減少內存訪問次數。
3、匯編階段
將匯編語言翻譯成機器指令。
『貳』 c語言編譯後生成什麼文件
品牌型號:聯想拯救者Y9000P
系統:Windows 11
c語言編譯後生成exe文件或者object文件。C語言是目前世界上流行、使用最廣泛的面向過程的高級程序設計語言。C語言對操作系統和系統使用程序以及需要對硬體進行操作的場合,用C語言明顯優於其它高級語言,許多大型應用軟體都是用C語言編寫的。
編譯是指將編輯好的源文件翻譯成二進制目標代碼的過程。編譯過程是由編譯程序(編譯器)完成的。不同操作系統下的各種編譯器的使用命令不完全相同,使用時應注意計算機環境。
C語言是以函數形式提供給用戶的,這些函數可方便的調用,並具有多種循環、條件語句控製程序流向,從而使程序完全結構化。C語言一共只有32個關鍵字,9種控制語句,程序書寫自由,主要用小寫字母表示。
它把高級語言的基本結構和語句與低級語言的實用性結合起來。C語言可以象匯編語言一樣對位、位元組和地址進行操作,而這三者是計算機最基本的工作單元。C的運算符包含的范圍很廣泛,共有種34個運算符。
『叄』 C語言源程序文件經過編譯連接之後生成一個後綴為_____的文件。
如果只生成一個文件,那麼這個題目答案是B。編譯(compile)後生成目標文件,後綴:.obj。也就是機器碼。
然後鏈接器(Linker) 連接生成可執行文件,後綴:.exe。最後運行命令(go),直接運行.exe文件。
(3)c編譯後產生的文件擴展閱讀:
簡單講,編譯器就是將「一種語言(通常為高級語言)」翻譯為「另一種語言(通常為低級語言)」的程序。
一個現代編譯器的主要工作流程:源代碼(source code) →預處理器(preprocessor) →編譯器(compiler) →目標代碼(object code) →鏈接器(Linker) → 可執行程序(executables)
高級計算機語言便於人編寫,閱讀交流,維護。機器語言是計算機能直接解讀、運行的。
編譯器將匯編或高級計算機語言源程序(Source program)作為輸入,翻譯成目標語言(Target language)機器代碼的等價程序。
源代碼一般為高級語言 (High-level language), 如Pascal、C、C++、Java、漢語編程等或匯編語言。
而目標則是機器語言的目標代碼(Object code),有時也稱作機器代碼(Machine code)。
對於C#、VB等高級語言而言,此時編譯器完成的功能是把源碼(SourceCode)編譯成通用中間語言(MSIL/CIL)的位元組碼(ByteCode)。
最後運行的時候通過通用語言運行庫的轉換,編程最終可以被CPU直接計算的機器碼(NativeCode)。
『肆』 c語言編譯後如何生成exe文件
在C語言中,生成`.exe`文件(在Windows環境下)通常涉及使用編譯器將C語言源代碼(`.c`文件)轉換成可執行文件(`.exe`)。這個過程通常通過命令行工具或集成開發環境(IDE)來完成。
如果你使用的是GCC編譯器(如MinGW在Windows上),你可以通過打開命令行工具(如CMD或PowerShell),導航到你的源代碼文件所在的目錄,然後運行類似`gcc -o myprogram.exe myprogram.c`的命令來編譯你的程序。這里,`gcc`是編譯器的名稱,`-o myprogram.exe`指定了輸出文件的名稱(包括`.exe`擴展名),而`myprogram.c`是你的源代碼文件名。
如果你使用的是Visual Studio這樣的IDE,過程則更加圖形化。你需要在Visual Studio中創建一個新項目,選擇C++(注意,雖然Visual Studio主要面向C++,但它也完全支持C語言),然後添加你的`.c`文件。編寫並保存代碼後,你可以通過點擊「生成」菜單中的「生成解決方案」或使用快捷鍵(通常是F7)來編譯你的程序。編譯成功後,Visual Studio會在項目的輸出目錄中生成`.exe`文件。
無論是使用命令行工具還是IDE,生成`.exe`文件的核心步驟都是編譯源代碼。編譯過程將源代碼轉換成機器語言,這樣計算機就可以直接執行程序了。
『伍』 為什麼c語言編譯之後生成的是.exe
Windows下的編譯套件:
cl.exe:編譯程序
link.exe:鏈接程序
lib.exe:lib庫載入程序
nmake.exe:構建工具
.exe是Windows上能運行程序格式。
不同平台後綴不同
比如在linux平台使用gcc編譯後生成.out文件
沒必要糾結後綴。
『陸』 c語言 編寫並運行了程序 產生的那些文件可以直接刪除嗎
當然可以了,c語言一般分為
.c 源文件 ,,存儲你寫的源代碼
編譯鏈接時一般會產生 .o 與 .exe
.o 就是object, 也就相當於windows下編譯的obj文件, 俗稱目標文件.
如在linux(UNIX) 下有這個文件就可以直接運行了
.exe windows下的可執行文件。
還有就是你進行文件操作的時候你自己利用操作文件的一些庫函數生成的文件,這個隨意,想刪就刪
『柒』 c璇璦緙栬瘧鍚庣殑鏂囦歡鍚庣紑鏄浠涔堬紵
C璇璦婧愭枃浠跺悗緙鍚嶆槸.c錛岀紪璇戠敓鎴愮殑鏂囦歡鍚庣紑鍚嶆槸.obj錛岃繛鎺ュ悗鍙鎵ц屾枃浠剁殑鍚庣紑鍚嶆槸.exe銆
婧愭枃浠剁殑鍚庣紑浠呬粎鏄涓轟簡琛ㄦ槑璇ユ枃浠朵腑淇濆瓨鐨勬槸鏌愮嶈璦鐨勪唬鐮侊紙渚嬪.c鏂囦歡涓淇濆瓨鐨勬槸C璇璦浠g爜錛夛紝榪欐牱紼嬪簭鍛樻洿鍔犲規槗鍖哄垎錛岀紪璇戝櫒涔熸洿鍔犲規槗璇嗗埆錛屽畠騫朵笉浼氬艱嚧璇ユ枃浠剁殑鍐呴儴鏍煎紡鍙戠敓鏀瑰彉銆
鎵╁睍璧勬枡
C璇璦鏄涓縐嶇粨鏋勫寲璇璦錛屽畠鏈夌潃娓呮櫚鐨勫眰嬈★紝鍙鎸夌収妯″潡鐨勬柟寮忓圭▼搴忚繘琛岀紪鍐欙紝鍗佸垎鏈夊埄浜庣▼搴忕殑璋冭瘯錛屼笖c璇璦鐨勫勭悊鍜岃〃鐜拌兘鍔涢兘闈炲父鐨勫己澶с
渚濋潬闈炲父鍏ㄩ潰鐨勮繍綆楃﹀拰澶氭牱鐨勬暟鎹綾誨瀷錛屽彲浠ヨ交鏄撳畬鎴愬悇縐嶆暟鎹緇撴瀯鐨勬瀯寤猴紝閫氳繃鎸囬拡綾誨瀷鏇村彲瀵瑰唴瀛樼洿鎺ュ誨潃浠ュ強瀵圭‖浠惰繘琛岀洿鎺ユ搷浣滐紝鍥犳ゆ棦鑳藉熺敤浜庡紑鍙戠郴緇熺▼搴忥紝涔熷彲鐢ㄤ簬寮鍙戝簲鐢ㄨ蔣浠躲
C璇璦鏄鏅閫傛ф渶寮虹殑涓縐嶈$畻鏈虹▼搴忕紪杈戣璦錛屽畠涓嶄粎鍙浠ュ彂鎸ュ嚭楂樼駭緙栫▼璇璦鐨勫姛鐢錛岃繕鍏鋒湁奼囩紪璇璦鐨勪紭鐐廣