前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C语言编译、链接和运行详解

C语言编译、链接和运行详解

原创
作者头像
兮动人
修改2021-06-30 11:18:22
2.7K0
修改2021-06-30 11:18:22
举报
文章被收录于专栏:兮动人的博客兮动人的博客

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 程序的主体结构说明
代码语言:txt
复制
	#include ... 
	void main() { // {} 包括内容, 称为函数体
	语句 1;
	语句 2;
	}

2) C 程序源文件以“c”为扩展名。

3) C 程序的执行入口是 main()函数

4) C 语言严格区分大小写。

5) C 程序由一条条语句构成,每个语句以“;”结束

6) 大括号都是成对出现的,缺一不可

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 什么是编译
  • 2. 什么是链接
  • 3. 什么是运行
  • 4. C 程序开发注意事项1
  • 5. 如果想只生成目标 exe 文件,不想执行结果
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档