代碼編譯完成後是文件嗎
首先你要明白編譯的意思,它是指把高級語言翻譯成計算機
能讀懂的低級語言(二進制代碼),這樣計算機才會執行你
的命令,編譯器就相當於一個翻譯,在翻譯的過程中還會檢
查你語法上有沒有錯誤
c語言編譯器自然是把用c語言寫的程序翻譯成二進制代碼咯
【原創答人】
⑵ 什麼是程序源代碼文件,什麼是編譯後生成的位元組碼文件
你好,你在編寫程序的時候,將寫的代碼保存到一個文件中,而這個文件的格式是.java。這樣的文件就是源代碼文件。經過javac編譯後,生成的.class文件就是位元組碼文件。
⑶ C語言程序編譯後產生哪些類型的文件這些文件的作用是什麼
1、以GCC編譯器為例,可以分為四步。
第一步是預處理,包括語法檢查等工作。
gcc
-P
abc.c
第二步由源程序生產匯編語言代碼。
gcc
-S
abc.c
會生成abc.s文件,這個文件里就是匯編代碼。
第三步編譯器生成目標代碼,一個源文件生成一個目標代碼。
gcc
-c
abc.c
會生成abc.o
第四步連接器從目標代碼生成可執行文件。
gcc
abc.o
2、目標代碼包括機器碼和符號表(函數及變數名)。連接器的主要作用是通過符號表在庫文件和其他模塊中找到在目標代碼中引入或未定義的符號(函數及變數名),將幾個目標代碼合成可執行文件。
⑷ C編譯後產生的是位元組碼文件嗎
C編譯後產生的是exe文件吧
你用VC編譯後就能在debug目錄下找到exe文件和一些中間文件
⑸ C語言源程序文件經過編譯連接之後生成一個後綴為_____的文件。
如果只生成一個文件,那麼這個題目答案是B。編譯(compile)後生成目標文件,後綴:.obj。也就是機器碼。
然後鏈接器(Linker) 連接生成可執行文件,後綴:.exe。最後運行命令(go),直接運行.exe文件。
(5)代碼編譯完成後是文件嗎擴展閱讀:
簡單講,編譯器就是將「一種語言(通常為高級語言)」翻譯為「另一種語言(通常為低級語言)」的程序。
一個現代編譯器的主要工作流程:源代碼(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++編譯後產生的一些文件是什麼
c++程序在編譯後,在目標路徑下會生成多個文件:
Debug文件夾(*.exe,*.ilk,*.obj,*.pch,*.pdb,*.idb,*,pdb),*.cpp,*.dsp,*.ncb,*.plg。
1、exe:是生成的可執行文件。
2、ilk:當選定漸增型編譯連接時,連接器自動生成ILK文件,記錄連接信息。
3、obj:是目標文件,源程序編譯後的產物。
4、pch:全稱是PreCompiled Header,就是預先編譯好的頭文件。
5、idb:文件保存的信息,使編譯器在重新編譯的時候只重編譯最新改動過的函數和只對最新類定義改動過的源文件進行重編譯,以提高編譯速度。
6、pdb:全稱是Program DataBase,即程序資料庫文件,用來記錄調試信息。
(6)代碼編譯完成後是文件嗎擴展閱讀:
工作原理:
C++語言的程序因為要體現高性能,所以都是編譯型的。但其開發環境,為了方便測試,將調試環境做成解釋型的。即開發過程中,以解釋型的逐條語句執行方式來進行調試,以編譯型的脫離開發環境而啟動運行的方式來生成程序最終的執行代碼。
生成程序是指將源碼(C++語句)轉換成一個可以運行的應用程序的過程。如果程序的編寫是正確的,那麼通常只需按一個功能鍵,即可搞定這個過程。該過程實際上分成兩個步驟。
第一步是對程序進行編譯,這需要用到編譯器(compiler)。編譯器將C++語句轉換成機器碼(也稱為目標碼);如果這個步驟成功,下一步就是對程序進行鏈接,這需要用到鏈接器(linker)。鏈接器將編譯獲得機器碼與C++庫中的代碼進行合並。
⑺ 編譯之後生成的文件是什麼
這個,每個語言對編譯的定義不盡相同,有可能是目標程序,有可能是中間代碼。
如:c,c++等通常生成的是目標程序,如python,java,C#等通常生成的是中間代碼。
⑻ 源文件是編譯過後的文件,還是原來寫代碼的文件
代碼文件,編譯後的是二進制代碼文件,是不能查看的
⑼ 程序編譯後形成的文件是什麼
玩c++建議去linux下玩,首先要搞明白編譯的是使用哪個編譯器,編譯的過程是怎麼樣。寫寫幾個Makefile就知道了。先直接用命令行操作,然後用集成的IDE來寫代碼。
對於編譯過程,總體上是這樣,源代碼(*.h,*.cpp/c)經過預編譯,編譯,生成目標文件(Windows下應該是.obj文件,Linux/unix下是.o文件),然後通過鏈接(將各種目標文件.obj(.o) 和 目標文件的集合(動態靜態庫dll(windows下),so(linux/unix下))),最終成功可執行文件(Windows下叫exe,Linux/unix下隨便以什麼結尾了)。
⑽ java源程序編譯過後的文件是什麼文件
java源程序文件名是*.java(源代碼就在*.java里)
編譯後為*.class(class是二進制文件)
java虛擬機(JVM)運行程序的時候就是載入class文件,因此說java程序都是由class堆起來的