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

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

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

1、编辑器是软件程序,一般是指用来修改电脑档案的编写软件,但也有人称 PE2、HE4(汉书)……等文书软件为编辑器。常见的编辑器有文本编辑器、网页编辑器、源程序编辑器、图像编辑器,声音编辑器和视频编辑器等。

简单来说,编辑器就是对计算机中的文件进行修改的软件,根据对象的不同,我们使用的编辑器也不同,编辑的内容也是不一样的。比如记事本,就是一个文本编辑器,它所编辑的对象就是文本,我们使用记事本记录文字或者删改其中的文字,这就叫做编辑,编辑器的功能就是仅仅让我们对其显示的内容进行编辑而已。

对于学习计算机的同学来说,我们主要用的出了文本编辑器外,就是代码编辑器了,代码编辑器编辑的对象是代码,我们可以直接使用编辑器对代码进行修改,就好像在记事本上修改自己的文字一样。

常用的编辑器:

NodePad++ :Notepad++ 是一款免费但优秀的代码编辑器,运行在 Windows 环境下,可以支持多种编程语言。

Vim : Vim 是从 vi 发展出来的一个文本编辑器,在程序员中被广泛使用,运行在Linux环境下。

GNU Emacs : Emacs 是一个轻便、可扩展、免费的编辑器,它比其它的编辑器要更强大,是一个整合环境,或可称它为集成开发环境。它可以处理文字,图像,高亮语法,将代码更直观地展现给开发者。

2、编译器:
编译器与编辑器不同,编辑器只是对内容进行编辑,而编译器则是将你所编辑的源代码编译成机器所能理解的语言。即将代码加工为.obj文件,然后利用链接器把目标文件和库文件链接形成可执行文件。

即:

​ 源代码(.cpp)->预处理器->编译器->目标代码(.obj)->链接器->可执行文件(.exe)

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

1、源代码文件:包含任何编程语言编写的代码,也就是说源代码文件就像一个记事本,用来存放代码,像我们常用的vs的源代码文件.cpp文件。

2、可执行文件:包含可执行程序的完整机器语言代码,因为计算机只能识别机器语言,所以我们利用编译器将我们熟知的编程语言转换为机器语言,然后利用链接器将其链接为可执行文件,最后再交给计算机运行。

3、“xxx.sln”:就是vs的解决方案文件,我们在这上面进行对代码的编辑与编译操作,然后它会生成我们所要的可执行文件。

4、项目文件:项目文件就是项目文件夹中的文件,我们解决一个问题就是一个项目,创立的程序就包含在项目文件夹中。

5、文本文件:文本文件是一种计算机文件,它是一种典型的顺序文件,其文件的逻辑结构又属于流式文件。特别的是,文本文件是指以ASCII码方式(也称文本方式)存储的文件,更确切地说,英文、数字等字符存储的是ASCII码,而汉字存储的是机内码。文本文件中除了存储文件有效字符信息(包括能用ASCII码字符表示的回车、换行等信息)外,不能存储其他任何信息。

我们常用的txt就是文本文件。

三、IDE与编辑器、编译器、调试器等有什么关系?举几个你常用的IDE

关系:IDE(集成开发环境)中集成了编辑器、编译器以及调试器等等,它就像一台组装好的机器一样,对于普通用户即代码初学者而言,IDE无疑是十分方便的,我们可以在IDE内完成对代码的编辑及编译的工作。

常用IDE:

Visual Studio 2019、 Dev-C++

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

ctrl+F5在Visual Studio中是开始执行不调试,也就是对源代码直接编译并执行。

在过程中清除了上一次的缓存并且重新执行任务,实际上就是将源代码编译成.obj文件并且利用链接器化为可执行文件并执行。

它使用了g++和gcc命令,用来完成对源代码的编译及链接。

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

g++:是GCC中的GUN C++ Compiler(C++编译器)

gcc:是GCC中的GUN C Compiler(C 编译器)

在后缀名为.c的文件中,gcc将它当做C程序,而g++将其当做C++程序,对于.cpp后缀的文件,gcc和g++都将其作为C++程序。

而在编译阶段g++会调用gcc,并且g++会自动连接STL库,也就是说,我们可以把g++看做gcc的升级版,就像C++之于C一般。

posted @ 2020-04-26 11:30  Leesu  阅读(440)  评论(1编辑  收藏  举报