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

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

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

编辑器:

文本编辑器是用作编写普通文字的应用软件,它与文档编辑器不同之处在于它并非用作桌面排版,它常用来编写程序的源代码。一个好的编辑器可以节省开发时间,提高工作效率,它们都是非常方便易用的环境,你可以用它们来编写代码,查看源文件和文档等,简化你的工作。

好用的编辑器:

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账号...

(0)


相关推荐

  • JS对象的遍历方法

    JS对象的遍历方法法一:使用for…in…循环varobj={‘0′:’a’,’1′:’b’,’2′:’c’};for(letiinobj){console.log(i,”:”,obj[i]);//{0:a,1:b,2:c}}法二:使用Object.keys遍历varobj={‘0′:’a’,’1′:’b’,’2′:’c’};Object.keys(obj).forEach(function(key){ console.log(key,obj[key]);//{0:a,1:

  • PR曲线 可算是明白了 precision recall曲线

    PR曲线 可算是明白了 precision recall曲线Inst#是样本序号,图中有20个样本。Class是groundtruth标签,p是positive样本(正例),n当然就是negative(负例)score是我的分类器对于该样本属于正例的可能性的打分。因为一般模型输出的不是0,1的标注,而是小数,相当于置信度。然后设置一个从高到低的阈值y,大于等于阈值y的被我正式标注为正例,小于阈值y的被我正式标注为负例。显然,我设置n个阈值…

  • 鼠标移到导航上面 当前的LI变色 处于当前的位置

    鼠标移到导航上面当前的LI变色处于当前的位置,广泛应用于当前导航。点击这里查看效果以下是源代码:1234鼠标移到导航上面当前的LI变色处于当前的位置-柯乐义51314152

    2021年12月20日
  • JavaScript 判断是否为数字的几种方式

    JavaScript 判断是否为数字的几种方式js判断是否为数字方式很多:typeof、instanceof、Number.isNumberparseInt、parseFloatisNaN、isFinite正则表达式本片文章就介绍一下这些方式的区别和用法。1.typeof、instanceof、Number.isInteger使用typeof判断对象是不是基本类型number,比如:letnum=1;typeofnum===’number’;//true使用instanceof判断对象是不是包装类Number

  • win10 硬盘图标变成空白解决办法是什么_新电脑如何分区硬盘win10

    win10 硬盘图标变成空白解决办法是什么_新电脑如何分区硬盘win10Win10硬盘图标变成空白解决办法如图,有时候会出现这种硬盘图标变成空白的情况,虽然不影响使用,但强迫症表示真的很难受,这里给出解决办法:按下组合键WIN+R,输入regedit再按回车运行,这时候会有一个提示,选择“是”。一层一层找到计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\DriveIcons\这个路径,或者也可以直接在上方地址栏输入,注意我这里路径最开始显示的是计

    2022年10月18日

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号