1. 什么是编译
1) 有了 C 源文件,通过编译器将其编译成 obj
文件(目标文件)。
2) 如果程序没有错误,没有任何提示,但在 Debug
目录下会出现一个 Hello.obj
文件,该文件称为目标文件
2. 什么是链接
1) 有了目标文件(.obj 文件
),通过链接程序将其和运行需要的 c 库文件
链接 成 exe 文件
(可执行文件)。
2) 如果程序没有错误,没有任何提示,但在 Debug
目录下会出现一个项目名.exe
文件,该文件称为可执行文件。
3) 为什么需要链接库文件呢? 因为我们的 C 程序中会使用 C 程序库的内容,比如 <stdio.h> <stdlib.h>
中的函数printf() system()
等等, 这些函数不是程序员自己写的,而是 C 程序库中提供的,因此需要链接
4) 你会发现链接后,生成的.exe
文件,比 obj
文件大了很多
3. 什么是运行
1) 有了可执行的 exe 文件, 也称为可执行程序 (二进制文件)
2) 在控制台下可以直接运行 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 程序开发注意事项21) C 程序的主体结构说明在这里插入图片描述
#include ...
void main() { // {} 包括内容, 称为函数体
语句 1;
语句 2;
}
2) C 程序源文件以“c
”为扩展名。
3) C 程序的执行入口是 main()函数
4) C 语言严格区分大小写。
5) C 程序由一条条语句构成,每个语句以“;
”结束
6) 大括号都是成对出现的,缺一不可