编辑器、编译器和IDE部分知识
一、编辑器与编译器有什么区别?有什么好用的编辑器?
-
编译器:
编译器就是将"一种语言(通常为高级语言)"翻译为"另一种语言(通常为低级语言"的程序。一个现代编译器的主要工作流程:源代码 (source code) → 预处理器 (preprocessor) → 编译器 (compiler) → 目标代码(object code) → 链接器 (Linker) → 可执行程序 (executables)
GCC编译器(能够支持许多编程语言)
-
编辑器:
编辑器是软体程序,一般是指用来修改电脑档案的编写软件,但也有人称 PE2、HE4(汉书)……等文书软件为编辑器。常见的编辑器有文本编辑器、网页编辑器、源程序编辑器、图像编辑器,声音编辑器,视频编辑器等。编辑器,就是基于对一个文件、一个视频、一串数字等进行编辑或者再次编辑的工具。一般是为了文件、视频或者字符有更好的体现功能才进行的编辑。
3.好的编辑器:
NodePad++(代码编辑器,可支持多种编程语言)
Vim(文本编辑器,可以自定检测拼写错误,支持语法高亮)
Sublime Test(代码编辑器,性能优良,支持多种主流操作系统运行)
Atom(文本和代码编辑器,简单易用,在Atom Shell上运行)
二、源代码文件、可执行文件、“xxx.sln”、项目文件、文本文件。
- 源代码文件(.c):包含程序员使用的任何编程语言编写的代码。
- 可执行文件(.exe):包含组成可执行程序的完整机器语言代码。
- “xxx.sln”:通过为环境提供对项目、项目项和解决方案项在磁盘上位置的引用,可将它们组织到解决方案中。比如是生成Debug模式,还是Release模式,是通用CPU还是专用的等.
- 项目文件(.proj):解决方案资源管理器中文件夹和文件的显示由.vcxproj.filters文件控制。
- 文本文件(.txt ):文本文件是一种计算机文件,它是一种典型的顺序文件,其文件的逻辑结构又属于流式文件。特别的是,文本文件是指以ASCII码方式(也称文本方式)存储的文件,更确切地说,英文、数字等字符存储的是ASCII码,而汉字存储的是机内码。文本文件中除了存储文件有效字符信息(包括能用ASCII码字符表示的回车、换行等信息)外,不能存储其他任何信息。
三、IDE与编辑器、编译器、调试器等有什么关系?举几个你常用的IDE。
- 关系:IDE(集成开发环境)中包含了编辑器+负责编译和链接的相关程序+调试。是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面工具。集成了代码编写功能、分析功能、编译功能、调试功能等一体化的开发软件服务套。
- 常用的IDE:Visual Studio 2019、 Dev-C++
四、在Visual Studio中,按一下ctrl+F5就可以“直接运行”.c或.cpp文件。原理是什么?中间经历了了什么步骤?实际上执行了什么命令?使用了g++、gcc这两个命令吗?
- 原理:Ctrl+F5开始执行不调试
- 步骤:清除上次操作的缓存后重新执行任务
- 命令:对代码进行编译运行
- 是否使用了g++、gcc:是
五、g++、gcc这两个命令有啥区别?
- gcc是GCC中的GUN C Compiler(C 编译器)
- g++是GCC中的GUN C++ Compiler(C++编译器)
- 更准确的说法:gcc调用了C compiler,而g++调用了C++ compiler
- 对于.c和.cpp文件,gcc分别当做c和cpp文件编译,g++统一当做cpp文件编译。
- g++会自动链接标准库STL,而gcc不会自动链接STL