一.编辑器与编译器有什么区别?有什么好用的编辑器?
编辑器:
文本编辑器是用作编写普通文字的应用软件,它与文档编辑器不同之处在于它并非用作桌面排版,它常用来编写程序的源代码。一个好的编辑器可以节省开发时间,提高工作效率,它们都是非常方便易用的环境,你可以用它们来编写代码,查看源文件和文档等,简化你的工作。
好用的编辑器:
Notepad++
Notepad++是一款免费优秀的文本编辑器,支持在Windows环境下运行的多种编程语言。Notepad++支持超过50多种编程、脚本、标记语言的语法高亮显示和代码折叠,能让用户迅速减小或扩大代码段以便查阅整个文档。用户可以手动设置当前语言,覆盖默认语言。该程序还支持自动完成某些编程语言的API子集。
Editpuls
EditPlus是一款由韩国 Sangil Kim (ES-Computing)出品的小巧但是功能强大的可处理文本、HTML和程序语言的Windows编辑器。EditPlus功能强大,界面简洁美观,且启动速度快;中文支持比较好;支持语法高亮;支持代码折叠;支持代码自动完成(但其功能比较弱),不支持 代码提示功能;配置功能强大,且比较容易,扩展也比较强。
编译器:
编译器就是将“一种语言(通常为高级语言)”翻译为“另一种语言(通常为低级语言)”的程序。
对于C语言来说,编译程序自动将源程序转化为二进制形式的目标程序。
编译器与编辑器的区别:简单说编辑器是用来写代码的,而编译器是对现场高级语言代码翻译成相对低级语言的一段小程序/指令。
二.源代码文件、可执行文件、“xxx.sln”、项目文件、文本文件
源代码文件
存放程序代码的文件,即我们编辑代码的文件,称为源代码文件。
C语言源程序文件的扩展名为“.c”或“.cpp”。源代码文件是相对目标文件和可执行文件而言的,一般是用高级语言写出来的。
可执行文件
链接器将目标代码、库代码和系统标准启动代码结合在一起,形成的完整的可在操作系统下独立执行的程序,称为可执行文件。
可执行文件的扩展名为“.exe“(Windows)。
xxx.sln
.sln:在开发环境中使用的解决方案文件。它将一个或多个项目的所有元素组织到单个的解决方案中。此文件存储在父项目目录中.解决方案文件,他是一个或多个.proj(项目)的集合。
项目文件
项目 project, 是一组代码的统称。这一组代码 必须实现一个完知整的功能, 可以是一个完整的程序, 也可以是其中一个模块。项目内的创立,就是为了更好的组织管理这些代码。
文本文件
把要存储的数据当成一系列字符组成,把每个字符的 ASCII 码值存入文件中。每个 ASCII 码值占一个字节,每个字节表示一个字符。故文本文件也称作字符文件或 ASCII 文件,是字符序列文件。
三.IDE与编辑器、编译器、调试器等有什么关系?举几个你常用的IDE。
IDE
集成开发环境(IDE,Integrated Development Environment )是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面等工具。集成了代码编写功能、分析功能、编译功能、调试功能等一体化的开发软件服务套。所有具备这一特性的软件或者软件套(组)都可以叫集成开发环境。如微软的Visual Studio系列,Borland的C++ Builder、Delphi系列等。该程序可以独立运行,也可以和其它程序并用。
简单说,就是集成了编辑器、编译器以及链接器等众多功能的一个集成开发环境。
常用IDE
Visual Studio 2019
Dev C++
四.在Visual Studio中,按一下ctrl+F5就可以“直接运行”.c或.cpp文件。原理是什么?中间经历了了什么步骤?实际上执行了什么命令?使用了g++、gcc这两个命令吗?
Ctrl+F5:开始执行(不调试),启动目标文件,但不附加调试器。一般会单独出现一个运行结果界面。
原理
ctrl+F5实际上是强行刷新的命令。
经历了清除缓存,重新加载。
使用了g++,gcc这两个命令。
五.g++、gcc这两个命令有啥区别?
g++和gcc的区别:
1、对于不同后缀的文件当作程序不同。
c后缀的文件,百gcc把它当做是C程序;g++当做是C++程序;对于.cpp后缀的文件,gcc和g++都会当做c++程序。
2、编度译阶段调用不同,g++会调用gcc;
3、连接阶段方式不同,通常会用g++来完成,这是因为gcc命令不能自动和c++程序使用的库连接。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/114449.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...