本文主要講述了一個C程序從源代碼到目標文件所經(jīng)過的步驟,介紹了編譯系統(tǒng),預處理、編譯、匯編和鏈接的相關知識。

一、編譯系統(tǒng) 

  一個C程序的生命周期從高級C語言程序開始。想要在系統(tǒng)上執(zhí)行.c程序,每條C語句都必須翻譯為低級的機器語言指令,將這些指令按照可執(zhí)行目標程序的格式打包,以二進制磁盤文件的形式存放,這就是可以由系統(tǒng)執(zhí)行的可執(zhí)行目標文件。這些工作包含如下圖所示的四個過程,由編譯系統(tǒng)完成。

  一般而言,編譯系統(tǒng)包括預處理器、編譯器、匯編器和鏈接器。

                    seo優(yōu)化培訓,網(wǎng)絡推廣培訓,網(wǎng)絡營銷培訓,SEM培訓,網(wǎng)絡優(yōu)化,在線營銷培訓

   注意一下上圖中各個階段輸出的文件格式是文本文件還是二進制文件。

1.預處理階段

  源代碼.c文件和相關的頭文件如stdio.h等被預處理器編譯為一個.i文件。

預處理過程主要處理那些源代碼文件中的以#開頭的預處理指令。主要規(guī)則如下:

  a.刪除所有的#

網(wǎng)友評論