C++ 程序编译的过程

点击链接学习更多C++ 技巧 :C++ 学习路线


C++ 程序的编译分为:预处理、编译、链接 三个步骤,下面依次进行介绍

预处理:替换 #define

相信大家比较容易看懂下面的代码,已知半径 r 计算圆的面积

#define PI 3.141592653
// 已知半径 r 计算圆的面积
float area(float r){
	return r * r * PI;
}

预处理器会替换所有的宏定义,并删除所有的注释,上面代码中的 PI 都被替换为了 3.141592653,交给编译器的将是下面这样的代码

float area(float r){
	return r * r * 3.141592653;
}

此外,预处理器还可以进行简单的逻辑判断,比如在头文件中常见的宏定义,这样可以避免头文件被反复调用,从而导致头文件中的变脸被重复声明

#ifndef AREA_H
#define AREA_H
// do something...
#endif

编译:生成.o文件

由编译器生成机器码,在 Linux 系统上为 .o 文件

链接:链接.a/.so文件

链接使用到的代码库,也就是提前编译好的二进制文件,.a是静态库,.so是动态库


点击链接学习更多C++ 技巧 :C++ 学习路线

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值