c程序的翻译过程 linux版

文章目录


一、程序的翻译过程

一个c的文件到可执行文件要经历4个步骤

1.预处理(进行宏替换)

gcc -E hello.c -o hello.i

先写一段带宏的简单的代码

gcc -E hello.c -o hello.i

执行完这个命令以后就会生成一个文件

打开以后就可以看到N是给替换了的

这里-E的意思就是只做完预处理就结束了就再继续往后面走了


2.编译(生成汇编)

gcc -S hello.i -o hello.s

把.i文件编译成.s

这里就会生成汇编代码


3.汇编(生成机器可执行代码)

但是变成汇编以后电脑还是不认识就要编译成机器码

gcc -c hello.s -o hello.o

但是这种还是执行不了的


4. 连接(生成可执行文件)

gcc -o hello hello.o


这样就可以直接运行了


总结

选项太多可以记忆成
选项esc 这里只要记住c是小写的就可以了
后缀 iso

相关推荐
不会就选b1 小时前
Linux之线程(二)
linux·运维·服务器
代码AC不AC1 小时前
【Linux】NAT与代理
linux·nat·代理
Aurorar0rua2 小时前
CS50 x 2024 Notes Memory - 03
c语言·开发语言·学习方法
leisoo809710 小时前
100GBA股股票数据怎么存ClickHouseRedisMySQLJSON完整对比
大数据·linux·服务器·开发语言·python
青瓦梦滋11 小时前
传输层UDP/TCP协议
linux·网络·c++·网络协议·tcp/ip·udp
ltl12 小时前
机密计算:SGX、SEV-SNP、TDX 与 ARM CCA
linux
ltl12 小时前
互联与网络:NVLink、InfiniBand、RoCE 与国产替代
linux
码上上班12 小时前
tengine知识点
linux·服务器·centos
捷瑞电子工坊12 小时前
嵌入式秋招面经:5大核心模块高频考题与实战避坑总结
c语言·stm32·嵌入式工程师·rtos·通信协议·嵌入式面试
天空'之城13 小时前
C 语言工业级通用组件手写 30:安全内存拷贝组件
c语言·内存拷贝·工业级组件·安全内存操作