一些gcc/g++编译器基础知识

源代码(.h .c .cpp)通过预处理器生成预处理后源代码(.i),经编译器后成为汇编代码(.s),通过汇编器生成目标代码,配合启动代码、库代码和其他目标代码通过链接器生成可执行程序(.exe .out)。

在你所在的目录下生成一个程序

touch mycode.c

一般我们直接将源代码编译成为可执行程序,例如

gcc mycode.c -o myname

将源代码生成预处理后源代码(预处理后注释会被删掉,宏定义会被替换,还有导入包)

gcc mycode.c -E

经编译器编译成汇编语言

gcc mycode.i -S

生成二进制文件(已经可以执行)

gcc mycode.s -s

gcc和g++都可以编译C/C++代码。后缀为.c的gcc会把它当做是C程序,g++会当做C++程序。后缀为cpp的二者都会当做C++程序。编译阶段g++会调用gcc,对于c++代码二者是等价的,但是gcc不能自动和C++程序使用的库进行链接,通常用g++完成链接,一般c++编译和链接都是用g++。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一个头发很多的美女

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值