地特四等
114年
[電子工程] 計算機概要
第 23 題
在 C/C++語言中,以#開頭的指令,編譯器會在下列那一個階段處理?
- A 當成註解,不處理
- B 前置處理時
- C 連結(Link)時
- D 偵錯時
思路引導 VIP
想像你在正式動工蓋房子(編譯成機器碼)之前,需要先請一位助手根據你的清單,把牆上貼的「參考圖稿」替換成「實際的零件」,或根據氣候決定是否要加裝隔熱層。這個「在主體工程開始前,先根據特定標記調整原始設計圖」的準備動作,在名稱上通常會帶有哪種性質的詞綴?
🤖
AI 詳解
AI 專屬家教
恭喜你準確地掌握了編譯流程的核心概念!選 B 是完全正確的。在 C/C++ 的程式開發中,以 # 符號開頭的指令被稱為 前置處理指令(Preprocessor Directives),例如我們常見的 #include 或 #define。這類指令並非交由編譯器直接翻譯成機器碼,而是在正式編譯(Compilation)啟動前,由 前置處理器(Preprocessor)先行掃描並執行文字替換、檔案包含或條件編譯等預備工作。
編譯程序的階段識別
從工程實務的角度來看,這題考驗的是對「程式生命週期」基本功的理解。編譯器的運作像是一條自動化流水線,前置處理(Preprocessing)負責整理原料,編譯(Compiling)負責轉換,而連結(Linking)則負責將各個模組組裝成最終產物。這類題目在電腦科學概論中屬於基礎但鑑別度極高的知識點,它能有效區分出學生是僅會撰寫語法,還是真正理解背後開發工具鏈(Toolchain)的運作邏輯。你能迅速判斷出其處理時機,代表你對於程式從原始碼轉變為執行檔的底層機制有著清晰的輪廓。