编辑器、编辑器、文件、IDE等常见概念辨析

一、编辑器与编译器有什么区别?有什么好用的编辑器?

1.编辑器编译器的区别

编辑器是软体程序,一般是指用来修改电脑档案的编写软件,常见的编辑器有文本编辑器、网页编辑器、源程序编辑器、图像编辑器,声音编辑器和视频编辑器等。 而编译器就是将我们写的程序百,比如用C, Jave, C++ , 汇编等语言写的程序,度经过编译器的转换,把这些语言转问换成计算机或者微型处理答器能够识别的机器代码

附:一个现代编译器的主要工作流程:源代码 (source code) → 预处理器(preprocessor) → 编译器 (compiler) → 目标代码 (object code) → 链接器(Linker) → 可执行[程序] (executables)

2.好用的编辑器

vim编辑器:Vim文本/代码编辑器Vim和Vi经过改进,属于高级文本编辑器,完美承接了Unix编辑器Vi的功能,性能没得说,堪称上古神器。是一个高度可配置的文本编辑器,满足开发人员的各种需求。

sublimeb: Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。

atom编辑器: atom编辑器中文版Atom中文版是一个由GitHub开发的免费开源文本编辑器,支持多平台,基于、JS、Less、HTML,是一个使用web技术构建的桌面应用程序,现在GitHub有近1000个开源包,支持为Atom添加新特性。

二、源代码文件、可执行文件、“xxx.sln”、项目文件、文本文件。

源代码文件:

源代码文件是是指未经编译zd的,按照一定的程序设计语言规范书写的,人类可读的文本文件。通常由高级语言编写。源程序可以是以书籍或者磁带或者其他载体的形式出现,但最为常用的格式是文本文件,这种典型格式的目的是为了编译出计算机可执行的程序。

可执行文件:

可执行文件 (executable file) 指的是可以由操作系统进行加载执行的文件。在不同的操作系统环境下,可执行程序的呈现方式不一样。

xxx.sln:

在开发环境中使用的解决方案文件。它将一个或多个项目的所有元素组织到单个的解决方案中。此文件存储在父项目目录中.解决方案文件,他是一个或多个.proj(项目)的集合

项目文件:

包括完成这个项目的各种文件,大概包括以下部分:

.sln

项目名的文件夹

.vcxproj

.vcxproj.filters

(若干).cpp

(如果有).h

其他也许会存在的杂项

文本文件

文本文件是指以ASCII码方式(也称文本方式)存储的文件,更确切地说,英文、数字等字符存储的是ASCII码,而汉字存储的是机内码。文本文件是指一种容器,文本文件是一种由若干行字符构成的计算机文件,文本文件存在于计算机文件系统中。通常,通过在文本文件最后一行后放置文件结束标志来指明文件的结束。

三、 IDE与编辑器、编译器、调试器的关系。常用的IDE

IDE:简单说,就是集成了编辑器、编译器以及链接器等众多功能的一个集成开发环境。

故IDE=编辑器+编译器+调试器

常用的IDE: Visual Studio

四、 在Visual Studio中,按一下ctrl+F5就可以“直接运行”.c或.cpp文件。原理是什么?中间经历了了什么步骤?实际上执行了什么命令?使用了g++、gcc这两个命令吗?

原理:将源代码文件(.cpp)转为可执行文件,执行可执行文件 (.exe)

中间经历:我认为这中间经过了 预处理 、 编译 、汇编、连接这几个过程

实际上执行了g++和gcc

五、g++、gcc这两个命令有啥区别?

GNU Compiler Collection(GUN 编译器集合),它可以编译C、C++、JAV、Fortran、 Pascal、 Object-C、Ada等语言。
gcc是GCC中的GUN C Compiler(C 编译器)
g++是GCC中的GUN C++ Compiler(C++编译器)

它们之间的区别:

对于不同后缀的zd文件当作程序不同。

c后缀的文件,gcc把它当做是C程序;g++当做是C++程序;对于.cpp后缀的文件,gcc和g++都会当做c++程序。

编译阶段调用不同,g++会调用gcc;

连接阶段方式不同,通常会用g++来完成,这是因为gcc命令不能自动和c++程序使用的库连接。