编译系统概要

我们首先看一看一个最简单的helloworl程序:

#include<stdio.h>
int main()
{
  printf("hello.world\n");
}

hello程序的生命周期是从一个高级c语言程序开始的,是一种高级语言程序,这种形式可以比较容易被人读懂。然而,为了在系统上运行hello.c程序,每条c语言必须可以被其他程序转化为一系列的低级机器语言指令,然后这些指令按照一种称为可执行目标程序的格式打好包,并以二进制磁盘文件的形式存放起来。目标程序也称为可执行目标文件。

在我们一般的linux系统上,从源文件到目标文件的转化是由编译器驱动程序完成的,也就是我们常用的gcc指令。

gcc -o hello hello.c

在这里,gcc编译器驱动程序读取源程序文件hello.c,并把它翻译成一个可执行的目标文件hello。这个翻译过程可以分为四个阶段,执行这四个阶段的程序分别为:预处理器,编译器,汇编器,和链接器,它们一起构成了编译系统。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值