zoukankan      html  css  js  c++  java
  • 编辑器、编译器、文件、IDE等常见概念辨析

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

    区别

    首先是编译器的概念,百度百科上是这样写的:
    简单讲,编译器就是将“一种语言(通常为高级语言)”翻译为“另一种语言(通常为低级语言)”的程序。一个现代编译器的主要工作流程:源代码 (source code) → 预处理器 (preprocessor) → 编译器 (compiler) → 目标代码 (object code) → 链接器 (Linker) → 可执行程序 (executables)。

    编辑器的概念:
    文本编辑器(或称文字编辑器)是用作编写普通文字的应用软件,它与文档编辑器(或称文字处理器)不同之处在于它并非用作桌面排版(例如文档格式处理),它常用来编写程序的源代码。

    编译器本质上是一个指令,要与编辑器的概念区别开来。常用的编译器是将用高级语言编写的代码翻译成低级语言代码。对于一门编程语言,可以用任何一个文字编辑软件编辑,代码编辑软件多了很多功能,比如对于特定语言可以语法高亮,本质上代码都是一个不同格式的纯文本(例如:C语言的.c,Java语言的.java)。编译之后才能够成为目标程序(即相对低级的语言,机器可以直接识别的语言。
    总之,编译器与编辑器的区别:简单说编辑器是用来写代码的,而编译器是对现场高级语言代码翻译成相对低级语言的一段小程序/指令。

    好用的编辑器:

    NodePad++、 Vim、 GNU Emacs、Sublime Test、 Atom、 Windows记事本

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

    源代码文件

    源程序文件是是指未经编译的,按照一定的程序设计语言规范书写的,人类可读的文本文件。
    源代码文件包含程序员使用的任何编程语言编写的代码。
    通俗来说,存放程序代码的文件,即为我们编辑代码的文件,称为源代码文件。C语言源程序文件的扩展名为“.c”或“.cpp”。源程序文件是相对目标文件和可执行文件而言的,一般是用高级语言写出来的。

    可执行文件

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

    “xxx.sln”

    ".sln"文件是在开发环境中使用的解决方案文件。它将一个或多个项目的所有元素组织到单个的解决方案中。此文件存储在父项目目录中,他是一个或多个.proj(项目)的集合
    .sln文件包含基于文本的信息,编译环境通过这些信息找到并且加载他引用到的持久数据和VSPackages项目。当用户打开解决方案的时候编译环境通过包含在.sln文件中的preSolution,Project,postSolution信息加载解决方案,包含在解决方案中的项目以及任何和解决方案有联系的持久信息。

    项目文件

    项目 project,来 是一组代码的统称。这一组代码 必须实现一个完整的功能, 可以是一个完整的程序, 也可以是其中一个模块。项目的创立,就是为了更好的组织管理这些代码。对于初学者来说, 项目往往只有一个文件 几个函数。这是体现不出项目的价值。但一旦完成一个比较大的功能时,项目代码可以达到几千上万个文件。这时项目的管理就很有必要了。

    文本文件

    文本文件是一种由若干行字符构成的计算机文件。文本文件存在于计算机文件系统中。通常,通过在文本文件最后一行后放置文件结束标志来指明文件的结束。
    文本文件是指一种容器,而纯文本是指一种内容。文本文件可以包含纯文本。
    一般来说,计算机文件可以分为两类:文本文件和二进制文件。

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

    关系

    集成开发环境(IDE,Integrated Development Environment )是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面等工具。集成了代码编写功能、分析功能、编译功能、调试功能等一体化的开发软件服务套。所有具备这一特性的软件或者软件套(组)都可以叫集成开发环境。如微软的Visual Studio系列,Borland的C++ Builder、Delphi系列等。该程序可以独立运行,也可以和其它程序并用。IDE多被用于开发HTML应用软件。例如,许多人在设计网站时使用IDE(如HomeSite、DreamWeaver等),因为很多项任务会自动生成。
    总结,IDE包括编辑器、编译器、调试器等工具。

    常用IDE

    Dev C++、Visual Studio 2019

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

    原理:清除缓存,重新将代码编译生成可执行文件后,在VS中开始运行该程序,且不调试

    经历的步骤:

    1.预处理,生成.i的文件[预处理器cpp]
    2.将预处理后的文件不转换成汇编语言,生成文件.s[编译器egcs]
    3.有汇编变为目标代码(机器代码)生成.o的文件[汇编器as]
    4.连接目标代码,生成可执行程序[链接器ld]

    实际上执行的命令

    执行清除缓存、编译运行命令

    使用了g++、gcc这两个命令吗:使用了

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

    1、对于不同后缀的文件当作程序不百同。
    c后缀的文件,gcc把它当做是C程序;g++当做是C++程序;对于.cpp后缀的文件,gcc和g++都会当做c++程序。
    2、编译阶段调用不同,g++会调用gcc;
    3、连接度阶段方式不同,通常会用g++来完成,这是因为gcc命令不能自动和c++程序使用的库连接。

  • 相关阅读:
    HDU 1022 Train Problem I
    HDU 1702 ACboy needs your help again!
    HDU 1294 Rooted Trees Problem
    HDU 1027 Ignatius and the Princess II
    HDU 3398 String
    HDU 1709 The Balance
    HDU 2152 Fruit
    HDU 1398 Square Coins
    HDU 3571 N-dimensional Sphere
    HDU 2451 Simple Addition Expression
  • 原文地址:https://www.cnblogs.com/cjt0722/p/12777836.html
Copyright © 2011-2022 走看看