乙個C程式是如何生成的

2021-07-23 04:57:57 字數 669 閱讀 9940

c程式設計的基本策略是用程式把源**檔案轉換成可執行檔案。c通過編譯和鏈結這兩個步驟來完成這一過程。編譯器把源**轉換成中間**,鏈結器把中間**和其他**包括預編譯的庫**合併,生成可執行檔案。

中間**有很多種形式,最普遍的就是把源**轉換為機器語言**,並把結果放在目標**檔案裡。但是目標檔案缺失許多**:1是啟動**,啟動**充當這程式和作業系統之間的介面。2是庫函式,例如printf()函式就需要stdio這個標準輸入輸出庫,許多函式都儲存在庫檔案種。

鏈結器的作用是把你編寫的目標**,系統的標準啟動**和庫函式這3個部分合併成乙個檔案,即可執行檔案。對於庫**,鏈結其只會把要用到的庫函式**提取出來。

下圖是windows環境下程式的生成過程:

簡而言之,目標檔案和可執行檔案都有機器語言指令組成。然而,目標檔案只包含編譯器為你編寫的**翻譯的及其語言**,可執行檔案還包括你編寫的程式中使用的庫函式和啟動**。

在linux系統中,我們不像windows系統上使用ide來編寫**,而是利用vim文字編輯器和gun編譯器來生成乙個程式。如下圖所示:

乙個程式是如何生成的

很多剛接觸程式設計的同學,應該都會學到乙個 hello world 的程式,通常教程中都會教先安裝乙個idea,然後在idea中敲入 編譯然後執行,簡單的 hello world 程式就完成了。但你是否有想過從敲完 後的原始檔,到輸出 hello world 的可執行檔案,這中間到底經歷了什麼過程呢...

自己是實現的乙個生成子集程式

1 include iostream 2using namespace std 34 const intmax 4 5inta max 6int b max 7 把十進位制轉化為二進位制 8void test ints 18for intj 0 j max j 19cout a j 20cout e...

如何用c 製作乙個程式

程式設計思想 1.製作合適的窗體.2.將窗體變成圓形.3.設定好圓形窗體的初始位置 大小等資料 4.製作第一輪小球滾動 5.考慮多種情況.製作流程 1.this formborderstyle formborderstyle.none 視窗無邊框 this size newsize 50 50 窗體...