一般情况下,大多数人学习C语言都会选择集成开发环境(IDE)来进行练习。使用集成开发环境的目的是缩短、简化C语言学习的时间与流程,降低代码管理难度、学习成本。由于我们编写的C代码大的方面至少要经过预处理、编译、汇编和链接才能成为机器可以运行的可执行程序,而使用IDE可以完全屏蔽可执行程序生成的流程、步骤,可以让初学者将精力集中到语言的学习上。而且,使用集成开发环境,也可以更加方便的对代码进行调试、对项目进行管理。

首先解释下开发环境的构成:开发环境由各种开发工具组成,各种工具互相配合、互相协作,统一受集成开发环境(IDE)“调遣”。我们要说的C语言开发,首先要有代码编辑器来编辑代码,还要有编译器(广义,包括预处理器、编译器、汇编器和链接器等)来将文本格式的源代码“加工”成机器可读的可执行程序,还要有调试器负责对代码进行调试,接下来就是项目管理器来对整个项目进行管理。

绝大多数人学习、使用C语言都是使用如下开发环境:

1.VS/Eclipse系列:这个系列没什么解释的,VisualStudio绝对是绝大多数学习、使用C语言小伙伴使用的IDE。该软件功能强大、调试方便。当时学习数据结构和算法的时候,我从gcc下回到VisualStudio2005,配合番茄助手敲起代码来那叫一个爽~~~(笑)Eclipse也不需多说,也是C语言(不仅仅是C语言)开发的主流IDE,不仅跨平台(win、linux、mac通吃),而且插件多、灵活,大中小型各种类型IT企业应用Eclipse的也是数不胜数。这完全得益于蓝色巨人IBM将Eclipse开源的结果。使用Eclipse开发,无论是将来转Java也好,还是用Python也好,都无需再花费切换平台(操作系统)、开发环境(IDE)的成本了。开源的力量就是强大,什么Java、C/C++、PHP、Rust等语言都有相应的Eclipse定制版本,就连嵌入式也可以搞,飞思卡尔MCU的IDE就是基于Eclipse,而ARM推出的替代Keil的DS-5也是基于Eclipse!太强大了。。。不过,由于该系列软件过于“臃肿”,“臃肿”的结果就是速度比较慢(想想你周围的胖子),大多C语言开发者成为老手以后,都会转向别的开发环境,然后鄙视用VS的“新手”(笑,大笑)。而且,由于VisualStudio系列并不免费,很多“小公司”支付不起VisualStudio的购买费用(软件臃肿,电脑配置一定得高,这也算是使用VS的费用吧)。

2.gcc系列:这个选择相信是很多内核、驱动(Linux方向)的首选,相当多的C语言老手,在到达一定程度以后,也都会转到gcc下面,因为该方式简单、灵活、高效,不仅可以高效率控制编译器对源代码的“加工”过程,而且,生成的可执行代码,运行效率也足够高效。gcc系列分为两个平台:Linux下gcc和Windows下gcc的移植版Cygwin、MinGW、Djgpp。如果你是安全、嵌入式、驱动开发工程师,建议你最终(学习时随便)选择Linux下gcc方式进行开发(可能也没别的选择)。另外,由于Mac系统是类Unix内核,所以gcc也是天然的开发环境标配喽。

3.CB/CL等系列:Windows平台下,相当多的开发人员不会、也没必要懂Linux操作,所以不会选择Linux下的gcc开发方案。由于种种原因,他们对Windows下移植版的gcc无爱,更不喜欢VS/Eclipse系列,转而投入到了CodeBlocks、CodeLite、C-Free等“轻量级”IDE的怀抱。这些IDE比较小众(相对来说),但是麻雀虽小五脏俱全,它们对C语言的支持(主要看编译器,IDE只是代码编辑器、工程管理器),一点不亚于gcc、VS/Eclipse系列。但由于略显“小众”,遇到问题解决起来比较耗时,配置起来也略微繁琐,所以本人也不太喜欢使用这些IDE进行开发。

本人在这里向初学者推荐一款超轻量的C语言集成开发环境gcc for Windows。该软件免费(无需纠结版权、支付费用),运行速度快、调试方式简单(支持多种类型查看变量值)、配置选项也极其简单。本号后续推出的《随时随地学习C语言》系列连载贴,将会选择该软件作为主要开发环境,并适当配合gcc(Linux下)、ARM汇编来详细解释C语言一些比较深入、底层的知识和技巧。

经过本文介绍,相信屏幕前的你已经有了自己中意的集成开发环境了吧

喜欢这篇文章的人也喜欢 · · · · · ·

快戳我!快戳我!快戳我!㊋㊋㊋