C++:源码到可执行文件

源码 main.cpp:

#include <iostream>
int main(){
	std::cout<<"Hello world"<<std::endl;
	std::cin.get();
}

一、编辑

首先我们需要有源码文件,使用到编辑器:txt,notepid++,vim等等,在这些编辑器上编辑出我们的源码文件 —— .cpp

二、编译(build)

1、预处理(i,ii)

将我们cpp文件中的所有以 # 开头的代码进行预加载和处理,即:将头文件的内容拷贝粘贴到对应的#include所在的位置,将 #define 的定义的宏进行替换;条件语句(#ifdef)

会生成临时的ii或者i文件,使用Visual Studio是默认是不会生成这种原处理中间文件的。一般我们也不需要查看;
如果真的想查看预处理生成的ii文件做了什么 ,可以右键项目-》c/c+±》预处理器-》预处理到文件-》勾选是。勾选后会产生一个ii文件。但是这样会中断后面的编译过程,不会再生成obj文件。所以平时运行时这个选项不要打开

2、编译、汇编(.obj)

编译:词法,语法分析等转为汇编语言。汇编语言就是一些CPU指令,MOV 寄存器值之类的
汇编:将汇编语言转为机器语言。

默认情况下我们最终生成的是.obj的机器码文件,里面全是二进制数据,如果想要转成我们自己有一定可读性的文件,可以选择右键项目-》c/c++ -》输出文件-》汇编程序输出-》带机器码的源程序。但是最终编译运行的时候还是要改回来。

最终每一个.cpp文件会被编译器生成一个对象文件(.obj文件)。头文件(.h)不会进行编译。

三、链接(.exe)

我们运行程序时需要多个.cpp,就会有多个.obj文件生成,要想最终运行程序需要把多个obj文件链接起来。
此时需要 链接器 帮助我们把多个.obj文件和第三方动态库进行链接,进而生成一个可执行文件.exe

运行

exe文件为可执行文件,双击即可运行。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值