文章目錄
1. 什么是編譯
- 有了 C 源文件,通過編譯器將其編譯成
obj文件(目標文件)。 - 如果程序沒有錯誤,沒有任何提示,但在
Debug目錄下會出現一個Hello.obj文件,該文件稱為目標文件
2. 什么是鏈接
- 有了目標文件(
.obj 文件),通過鏈接程序將其和運行需要的c 庫文件鏈接 成exe 文件(可執行文件)。 - 如果程序沒有錯誤,沒有任何提示,但在
Debug目錄下會出現一個項目名.exe文件,該文件稱為可執行文件。 - 為什么需要鏈接庫文件呢? 因為我們的 C 程序中會使用 C 程序庫的內容,比如
<stdio.h> <stdlib.h>中的函數printf() system()等等, 這些函數不是程序員自己寫的,而是 C 程序庫中提供的,因此需要鏈接 - 你會發現鏈接后,生成的
.exe文件,比obj文件大了很多
3. 什么是運行
- 有了可執行的 exe 文件, 也稱為可執行程序 (二進制文件)
- 在控制台下可以直接運行 exe 文件
4. C 程序開發注意事項1
- 對修改后的
hello.c源文件需要重新編譯鏈接,生成新的exe 文件后,再執行,才能生效。
5. 如果想只生成目標 exe 文件,不想執行結果
- 如:
hello.c程序代碼修改后只想生成.exe 文件,不要執行結果

- 可以這樣做:打開 VC++ 2010 ,調試–> 生成解決方案

- 這樣就不會彈出執行
.exe 文件 - 而當打開
.exe 文件就是生成后的結果
6. 編譯、鏈接和運行的流程

hello.c的源文件只有1KB

-
編譯后生成的 目標文件 只有
4KB

-
當鏈接生成
exe 文件變成了 27KB,說明在鏈接的過程中把一些庫函數資源一起鏈接到 exe 文件中,所以 exe 文件變大了

7. C 程序開發注意事項2
- C 程序的主體結構說明
#include ...
void main() { // {} 包括內容, 稱為函數體
語句 1;
語句 2;
}
- C 程序源文件以“
c”為擴展名。 - C 程序的執行入口是 main()函數
- C 語言嚴格區分大小寫。
- C 程序由一條條語句構成,每個語句以“
;”結束 - 大括號都是成對出現的,缺一不可
