1. 程式人生 > >[C] 執行C程式的步驟

[C] 執行C程式的步驟

在這裡插入圖片描述

  1. 編輯:源程式f.c
  2. 編譯:先用C編譯系統提供的“前處理器”(“預處理程式”或“預編輯器”)對程式中的預處理指令進行編譯處理。由預處理得到的資訊與程式其他部分一起,組成一個完整的、可以用來進行正式編譯的源程式,然後由編譯系統對源程式進行編譯
    例如,對於#include<stdio.h>將stdio.h標頭檔案的內容讀進來,取代#include<stdio.h>
  3. 連線:經過編譯所得到的二進位制目標檔案(.obj)還不能供計算機直接執行。一個程式可以有好幾個.c檔案,而編譯時以單個.c檔案為物件的,一次編譯只能得到與一個.c檔案相對應的目標檔案(目標模組),它只是整個程式的一部分。必須把所有的編譯後得到的目標模組連線裝配起來,再與函式庫相連成整體,生成一個可供計算機執行的目標程式,稱為可執行程式(executive program)
  4. 執行可執行程式(.exe),得到執行結果

【解釋】

  1. 編輯:寫c檔案,可能有多個
  2. 編譯:將預處理指令進行處理,編譯成一個.obj,一個.c檔案編譯成一個.obj
  3. 連線:可能有多個.c檔案,對應就有多個.obj檔案,將.obj檔案進行連線,得到.exe
  4. 執行:執行.exe

【關於include】

  1. include進來的只是標頭檔案.h,一般把具體的實現放到.c檔案中
    例如:stdio.h存放申明,stdio.c存放具體實現
  2. 所以包含#include<stdio.h>的test.c檔案編譯的過程:
    • 先在test.c中將#include<stdio.h>
      用stdio.h進行代替
    • 編譯test.c得到test.obj
    • test.obj與stdio.obj(由stdio.c編譯得到)進行連線,組成test.exe