c语言的编译和链接

本文详细解释了C++程序从源代码到可执行文件的生成过程,包括源程序的概念、编译将源代码转换为目标程序,以及链接将目标程序与系统组件结合形成可执行程序的重要性。
摘要由CSDN通过智能技术生成

c(c++)程序的生成过程: 编写源代码->编译->链接 。对应的各个阶段处理的文件的扩展名为: .c或.cpp->.obj->.exe

什么是编译:

首先我们需要知道的两个概念,源程序 和 目标程序

源程序:是指用源语言写的,有待翻译的程序,如我们自己写的一段c++代码,这段代码只有我们自己能看懂,计算机是不懂,计算机只能理解二进制。

目标程序:源程序通过翻译程序加工以后生成的机器语言程序。这是计算机可以理解的语言。把源程序转化为目标程序的操作就叫做编译。

什么是链接:

C语言代码经过编译以后,会变成了二进制形式的目标文件(Object File)--- 对于 Visual C++,目标文件的后缀是.obj,对于 GCC,目标文件的后缀是.o。但此时的代码还不能运行起来。因为它还需要和系统提供的组件(比如标准库)结合起来,这些组件都是程序运行所必须的。例如我们要在屏幕中输出字符,这必须调用系统提供的库才能够实现。

这就是链接,经过链接才会生成 可执行程序 (如 win 平台上的exe)

总结

不管我们编写的代码有多么简单,都必须经过「编译 --> 链接」的过程才能生成可执行文件:

  • 编译就是将我们编写的源代码“翻译”成计算机可以识别的二进制格式,它们以目标文件的形式存在;
  • 链接就是一个“打包”的过程,它将所有的目标文件以及系统组件组合成一个可执行文件。

  • 15
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值