.o .s .i的含义

.o、.s、.i 这些后缀名的命名通常是历史习惯和文件用途决定的。以下是它们的由来:

  1. .o - Object File(目标文件)
    • .o 来自 Object file(目标文件)。
    • 目标文件是经过编译和汇编后的二进制文件,但还未进行链接,无法直接运行。
    • Unix 系统和 GCC 采用 .o 作为目标文件的扩展名,Windows 上常见的是 .obj(Object file)。

  1. .s - Assembly File(汇编文件)
    • .s 来自 Assembly file(汇编文件)。
    • 在 Unix 系统中,汇编语言源文件的标准扩展名是 .s,表示 “Source” 或 “Symbolic assembly language”(符号汇编语言)。
    • 这个命名传统源于早期 UNIX 编译器和汇编器,GCC 也沿用了这一惯例。

  1. .i - Preprocessed File(预处理文件)
    • .i 来自 Intermediate file(中间文件)或 Include-expanded file(包含展开文件)。
    • 预处理阶段展开 #include、宏定义 #define 等,因此文件扩展名 .i 表示它是 处理过的中间文件,适用于 C 语言(C++ 预处理文件一般用 .ii)。
    • 这种命名方式也是 UNIX 编译工具的历史遗留传统。

命名规则的起源
• 这些后缀名的使用起源于 Unix 和早期 C 编译器(如 AT&T 的 PCC 和 GCC),后来成为业界标准。
• 这些后缀简短易记,便于编译工具和程序员快速识别文件类型。

总结

扩展名 含义 由来
.o Object file(目标文件) “Object”(目标)
.s Assembly file(汇编文件) “Source” 或 “Symbolic assembly”
.i Preprocessed file(预处理文件) “Intermediate” 或 “Include-expanded”

所以,这些扩展名的命名是 UNIX 传统、编译流程的需求以及简短易记的原则共同决定的!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值