编程基础编译器是啥?

Posted 程序员互动联盟

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了编程基础编译器是啥?相关的知识,希望对你有一定的参考价值。

很多初学者把编译器和开发环境混在一起,搞不清楚他们的区别,甚至有人认为他们是一个东西。
【编程基础】编译器是啥?
其实这两个完全不一样,一个是具体的程序软件,另外一个是开发的环境,它包括一系列开发所需要的软件工具,当然其中也包括编译器在里面。


编译器只是一个把源代码编译成目标代码的工具而已,同一个编译器可以存在于不同的开发环境中,比如微软的编译器cl、Linux下的gcc、g++,它可以存在于VS的开发环境,也可以存在于codeblock这个开发环境,还可以存在Eclipse里面,一般开发环境都可以自己配置选择编译器等这些软件。每一家的编译器都可能会提供不同库函数和头文件,像早期的Borland的C编译器与Microsoft的就很多不同,也有群友问为什么在VC里面找不到一些头文件就是这个道理。

一个开发环境除了一般的编译器,还包括编辑器,预处理器,连接器,目标文件复制,汇编器,反汇编器等等,它本质上是一个综合了编写代码,编译,调试,甚至最后的执行文件打包工具于一体的一些列工具集合,所以名副其实就是一个环境,不是具体某一个工具软件。而且往往开发环境不只是支持一种语言,比如VS,它可以支持C/C++、VB、C#等语言开发。它除了提供这些工具集,还做了很多额外的工作,比如帮你组织Makefile、编译连接配置、自动生成环境变量等。


理论上要写最简单的开发环境的软件其实不难,就是提供一个代码编辑器,然后调用相应的编译器来编译这些源代码,只要有makefile编写基本功的都不是太难。


说到这里,就不得不提很多人把VC++作为一个语言开看待的现象,比如在简历或者聊天上看到:我会VC++语言、熟悉语言:C/VC++等等这种说法和写法都是不对的。VC、VS都只是一个开发环境,它其实就是可以支持C/C++的一个开发环境,否则会被别人笑掉大牙的。


----------------------我是不严谨的分割线-----------------------


你在学习编程的时候是不是遇到很多困难无从下手?

你在学习编程的时候是不是觉得很枯燥没有小伙伴一起?

你是不是想快速成长成为一名真正的程序员

你是不是想找一名导师来指导一下职业规划?

你是不是想知道BAT这样的公司是什么样的?

.........


小编也欢迎有情怀的小伙伴加入联盟和高手们一起为大家奉献更多的编程趣事。



  • 编程老鸟输入数字 2 让我们一起畅聊技术。

更有(java/C/C++/Linux/android)高手帮你解决难题,和你互动,讨论编程未来。

长按二维码识别关注程序员互动联盟


关注后和技术大牛做朋友,还不赶快来!

声明:本文使用的图片部分来自网络

点击"阅读原文"进入编程基础模块

以上是关于编程基础编译器是啥?的主要内容,如果未能解决你的问题,请参考以下文章

Python之编程基础(编程语言分类)

第九章shell脚本编程基础

编程基础;程序的执行方式;编程基本概念

C++和JAVA的区别是啥?

C++和JAVA的区别是啥?

bash 脚本编程基础及配置文件