-8
A
回答
1
1
如果嚴格按照C標準這說明(不使用單詞「彙編」)(5.1.1翻譯環境,5.1.1.1程序結構)
1交流計劃不需要全部同時翻譯。該程序的文本保存在本標準中稱爲源文件的單元(或預處理文件 )中。 源文件連同 所有通過預處理 指令#include包含的頭文件和源文件被稱爲預處理轉換單元。預處理後,預處理翻譯單元稱爲 翻譯單元。以前翻譯的單位可能是 單獨保存或在圖書館。程序的單獨翻譯單元 通過(例如)調用與其標識符具有外部鏈接的功能,對其標識符具有外部鏈接的對象的操縱或對數據文件的操縱進行通信。 翻譯單元可以單獨翻譯然後再鏈接到 產生一個可執行程序。
因此,在預處理期間但在翻譯之前,所有#includes都替換源文件。
相關問題
- 1. 這兩個陳述有什麼區別?
- 2. 這兩個陳述有什麼區別?
- 3. 這兩個陳述有什麼區別?
- 4. 這個陳述有什麼問題?
- 5. 如何將這兩個陳述合併成一個陳述?
- 6. 在swift中這個陳述的等價物是什麼?
- 7. 這兩個陳述之間有什麼區別?
- 8. 爲什麼這兩個陳述有不同的結果?
- 9. 這兩個陳述有什麼區別嗎?
- 10. c中的這個陳述是什麼意思?
- 11. 爲什麼這個陳述只適用於WHERE?
- 12. 爲什麼我從這個陳述中得到-1?
- 13. 爲什麼這個「如果」 - 陳述工作?
- 14. 爲什麼不能證明這個邏輯陳述?
- 15. 在這個SSI條件陳述中,「$」是什麼意思?
- 16. 爲什麼不是這個「如果陳述」工作?
- 17. 這個陳述可以被認爲是一個類不變嗎?
- 18. 這個案例陳述有什麼問題?獲取丟失關鍵字錯誤
- 19. 我將如何分離這些陳述?
- 20. 這兩個陳述是否相同?
- 21. 這兩個陳述是否相同?
- 22. 我該如何重寫這個陳述?
- 23. sql:如何改進這個陳述
- 24. 爲什麼'if'陳述不起作用?
- 25. 下面的陳述是什麼意思?
- 26. $ .getJSON SyntaxError:missing;在陳述之前,爲什麼?
- 27. 準備好的陳述是什麼?
- 28. 爲什麼當陳述自己
- 29. 爲什麼這些案件沒有提前陳述?
- 30. 爲什麼這些準備好的陳述不起作用?
heh?你有沒有跳過你書中的預處理章節? –
問題的標題與問題本身不符。 – Codor
閱讀此:https://stackoverflow.com/questions/16253977/how-does-c-preprocessor-work –