常见的编程语⾔源⽂件后缀名
常见的编程语⾔源⽂件后缀名
众所周知,编程语⾔源⽂件的后缀名可以帮助我们快速的判断其是哪种语⾔,从⽽选择合适的编译器,⽅便我们后期的学习和操作。
在介绍编程语⾔源⽂件后缀名之前,我们先把编程语⾔分个类:常见的分类为机器语⾔(由⼆进制码0和1构成)、汇编语⾔、⾼级语⾔三个。还可以将其分为编译语⾔(典型的有C、C++、Go、Swift、object-c以及汇编等)和解释性语⾔(Javascript、python、php、perl、Ruby 等)以及混合性语⾔(Java和C#等)
1. 机器语⾔
⾸先我们要明⽩,机器语⾔和后缀名没有必然联系;其次,机器语⾔⼀般不需要编译和解释,对⼀般的单⽚机或嵌⼊式CPU,机器语⾔的后缀名⼀般为.bin(直接的⼆进制⽂件)或.hex(16进制⽂本),对操作系统来说,机器语⾔就是可执⾏⽂件,在windows系统中,典型的是 .exe .dll
.sys 等,⽽在linux系统中机器语⾔⼀般没有后缀,因为在Linux中,带有扩展名的⽂件,只能代表程序的关联,并不能说明⽂件是可以执⾏,从这⽅⾯来说,Linux的机器语⾔扩展名没有太⼤的意义。
2. 汇编语⾔
汇编语⾔源⽂件的后缀名是以.asm结尾的,需要经过编译器编译成.exe 或者⽂件,才能在命令⾏中运⾏。在这⾥我们补充⼀下编译型语⾔和解释性语⾔的区别:
编译型语⾔原理:通过专门的编译器,将所有源代码⼀次性转换成特定平台(Windows、Linux 等)执⾏的机器码(以可执⾏⽂件的形式存在)。
优点:编译⼀次后,脱离了编译器也可以运⾏,并且运⾏效率⾼。
缺点:可移植性差,不够灵活。
解释型语⾔原理:由专门的解释器,根据需要将部分源代码临时转换成特定平台的机器码。
优点:跨平台性好,通过不同的解释器,将相同的源代码解释成不同平台下的机器码。
缺点:⼀边执⾏⼀边转换,效率很低
3. ⾼级语⾔
说到⾼级语⾔,不得不提⼀下我上⼤学最开始接触的⼀门语⾔-C语⾔,虽然是很棒的⼀门语⾔,但是学习了两个⽉之后就放弃了,因为对于刚军训完的我来说挑战太⼤了,但是当我知道我的发家语⾔pyt
hon的内核以及linux内核也是由C语⾔和C++编写的时候,我就增加了重新学习C语⾔的希望,话不多说,我们继续正题。
C语⾔源⽂件后缀名是.c,编译⽣成的⽂件后缀名是.obj,连接后可执⾏⽂件的后缀名是.exe。
.h⽂件中⼀般放的是同名.c⽂件中定义的变量、数组、函数的声明,需要让.c外部使⽤的声明。编程php语言
.c⽂件⼀般放的是变量、数组、函数的具体定义
在C语⾔中:
头⽂件后缀名: .h
源⽂件后缀名: .c
在C++中:
头⽂件后缀名: .h, .hpp, .hxx
源⽂件后缀名:.cpp, .cc, .cxx, .C .c++
这⾥补充⼀下C++的源⽂件后缀名:VC⾥⽤cpp作后缀名, 在GCC⾥默认采⽤C、cc、cxx作为后缀名
(VS file).cpp, .h
(GCC file).cc, .h
详细见如下:
GCC⽂件中后缀名:
C为后缀的⽂件,C语⾔源代码⽂件;
.a为后缀的⽂件,是由⽬标⽂件构成的档案库⽂件;
.C,.cc或.cxx 为后缀的⽂件,是C++源代码⽂件;
.h为后缀的⽂件,是程序所包含的头⽂件;
.i 为后缀的⽂件,是已经预处理过的C源代码⽂件;
.ii为后缀的⽂件,是已经预处理过的C++源代码⽂件;
.m为后缀的⽂件,是Objective-C源代码⽂件;
.
o为后缀的⽂件,是编译后的⽬标⽂件;
.s为后缀的⽂件,是汇编语⾔源代码⽂件;
.S为后缀的⽂件,是经过预编译的汇编语⾔源代码⽂件。
C#后缀名是:.cs
CS⽂件主要是与primarily,VisualC#.NET,SourceCode等相关联的游戏⽂件。
C#编译后缀名:*.dll
(C#这门语⾔,作为⼩⽩的我没有接触过,所以只能给⼤家分享到这⾥了)
Java源⽂件名的后缀是:“.java”。
.java结尾的是源⽂件,本质上就是个⽂本⽂件。.class结尾的是java编译器编译源⽂件所得的java字节码⽂件,是⼆进制的。真正能运⾏的是这个.class结尾的⽂件,java虚拟机(解释器)可以解释并运⾏编译出来的.class⽂件
PHP是在服务器端执⾏的脚本语⾔.
后缀名为“.php”的⽂件格式是⼀种动态⽹页编码的存储格式,包含了PHP脚本代码
.pm 是⽤ perl 语⾔写的模块⽂件
.pl 是⽤ perl 语⾔写的脚本⽂件
Python⽂件的后缀名有:“.py源码⽂件”、“.py3(python3脚本,很少使⽤)”、“.pyc编译⽂件,执⾏速度快于.py结尾的⽂件,经常⽤于向外发布,例如Github开源⽹站上就有许多其结尾的⽂件”、“.pyo是优化编译后的程序”、“.pyd其它其它语⾔编写的扩展⽂件,与dll⽂件相当”、“.pyi”、“.pyx”、“.pyz”、“.pywz”、“.rpy”、“.pyde”、“.pyp”、“.pyt”。(因篇幅有限,其它的后缀名下次再讲)
Kotlin(Android官⽅⽀持开发语⾔) ⽂件以 .kt 为后缀。
还有很多种语⾔,⼩陈还不太熟悉,但是我个⼈觉得:不管那⼀种编程语⾔,都有其适合的领域,尺有所长,⼨有所短,⽤好了才能以不变应万变
初次写博客,如有不⾜,还望⼤家指教