前言

初学者学习C语言遇到的最大困难想必就是搭建环境了,相当多的初学者就是被搭建环境导致放弃了学习编程,就我自己的经验而言,初学编程不应该受限于环境,使用成熟好用的环境就可以了,之后熟悉一些可以在慢慢探究。想到大多数小伙伴都是使用Windows系统,今天就先说下Windows系统下有哪些学习C语言的集成开发环境,由于篇幅问题,具体安装方法之后再详细分解。

什么是集成开发工具(IDE)

这里大家如果没有接触过编程的话,可能不知道什么是集成开发环境。

之前已经说过编程的核心工具是下边几个:
编辑器: 编写代码的工具,这个有很多,甚至可以使用系统自带的文本编辑器即可
编译器: 计算机是不认识C语言的,所以就需要一个“翻译”,将C语言翻译为计算机理解的机器码,就是所谓的编译器
调试器:当然,程序员也不能保证一次写对,很多问题就需要一步一步执行代码才能发现错误所在

而集成开发环境就是在包含以上三者的基础上添加了软件图形界面,可以做到图形化编辑编译调试的统一集成开发软件,也就是常说的IDE(Integrated Development Environment),基本所有类型的语言都有各自的IDE,C语言由于历史比较悠久,开始的规范也很宽松,所以就衍生出了多款IDE。

获取方式

下边就说几种常见的IDE,安装包可以添加我的微信:coderAllen,回复“C语言IDE”即可获取。

下边我们就从软件安装体积从小到大介绍下(体积越小安装也就越简单,当然功能也就越简单,可以在学习中自己取舍)

C-Free

C-Free是一款C/C++集成开发环境(IDE)。目前有两个版本,收费的C-Free 5.0 专业版和免费的C-Free 4.0 标准版。好处就是安装简单,体积很小,不过缺点就是调试功能不行,而且版本很久不更新了,适合在在win7及之前的系统使用。

Visual C++ 6.0

这款IDE想必很多人都很熟悉,直到现在还有很多高校是使用Visual C++ 6.0教学,细想下这可是1998年的软件啊,可见现在教学和社会的脱节,这里就不吐槽谭浩强老师了,缺点和C-Free差不多,毕竟算是老古董了,兼容性不好,对于初学者不友好。

Dev C++

终于到了可以正常使用的版本了,首先Dev C++ 是一款免费开源的 C/C++ IDE,体积很小巧,我初学C语言使用的就是Dev C++,界面很漂亮,因为是内嵌 GCC 编译器,编译感觉很快,但是后边不在使用的原因也是英文调试功能不行,经常卡死。

Code::Blocks

我在放弃Dev C++之后选择的平台,刷二级C语言全程使用的IDE,也是一款开源的IDE,他的特点是可以跨平台使用,其实linux下使用不方便,主要还是Windows下使用较多,内置甚至还可以编译单片机代码(不推荐,没必要),有官方绿色版,可以免安装使用.

Visual Studio

目前我验证方案主要使用的IDE,功能最为强大,微软也在一直进行更新,目前最新版为2019,之前全部安装差不多100G。需要的可以去官网下载。我习惯使用的版本是2010(稍微有些老,对于C/C++是足够的)

总结

以上就是目前windows系统下最常见的C语言集成开发环境,从开始学习C语言,这些软件基本都使用过,优缺点也都总结如上,可以根据自己所处阶段选择适合自己的IDE(谨记没有最好,只有适不适合)


更多文章关注公众号 Allen5G

Windows下学习C语言有哪些集成开发软件?的更多相关文章

  1. 在 Linux 下学习 C 语言有什么好处?

    作者:宅学部落链接:https://www.zhihu.com/question/23893390/answer/832610610来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请 ...

  2. windows下的go语言的环境搭建和初探

    闲话不说,直入主题. 1.准备工具 a.windows下的Go语言开发安装包 官方下载地址:https://code.google.com/p/go/downloads/list b.Go语言中文官网 ...

  3. 在windows下用C语言写socket通讯实例

    原文:在windows下用C语言写socket通讯实例 From:Microsoft Dev Center #undef UNICODE #define WIN32_LEAN_AND_MEAN #in ...

  4. Windows下用C语言连接Mysql注意问题

    原文:Windows下用C语言连接Mysql注意问题 环境是:在VS6.0 安装Mysql后,我们需要相应的头文件以及lib文件,所以安装过程必须是完整安装.否则不会生成include文件夹哦~ 具体 ...

  5. Windows下,配置VS Code的Java开发环境

    Windows下,配置VS Code的Java开发环境 前言 最近痴迷于VS Code的开发环境配置,原因就在于它的轻巧和免费,还能当一个非常棒的文本编辑器.如果之前你配置过VS Code并且失败了, ...

  6. Windows下搭建go语言开发环境 以及 开发IDE (附下载链接)

    1.下载 并且 安装 Go安装包   =========================================================== 在CSDN上传了我的版本,供大家下载: = ...

  7. Windows下用Composer安装Laravel步骤(集成php环境用phpStudy2016版本)

    描述:到官方网站了解并根据自己所需要的版本号安装,所需要的php版本是多少. 中文网站:http://www.golaravel.com/ 官方网站:https://laravel.com/ 其实各自 ...

  8. 在Windows下用Eclipse+CDT+MinGW搭建C++开发平台

    本文提供了在Windows下用Eclipse+CDT+MinGW搭建C / C++开发平台的方法, 测试平台为Windows XP Sp2 CHS.   以下软件均为Windows平台下的版本. 1. ...

  9. windows下eclipse远程连接hadoop集群开发mapreduce

    转载请注明出处,谢谢 2017-10-22 17:14:09  之前都是用python开发maprduce程序的,今天试了在windows下通过eclipse java开发,在开发前先搭建开发环境.在 ...

随机推荐

  1. iOS - 点击按钮实现简单的复制功能

    UIPasteboard使用 基本使用: - (void)copyClick { UIPasteboard *pab = [UIPasteboard generalPasteboard]; pab.s ...

  2. preg_quote

    $p = 'http://'; $p = '/'.preg_quote($p, '/').'/'; echo $p; /http\:\/\//

  3. [图片问答]LODOP打印的行间距字间距

    LODOP可以打印纯文本,也可以是超文本,关于哪些打印项是纯文本,哪些打印项是超文本,之前有博文相关介绍:LODOP中的纯文本和超文本打印项. 之前的关于纯文本的行间距字间距介绍:Lodop设置文本项 ...

  4. js的style.width取不到元素的宽度值

    使用jquery的.width()方法获取一个元素的当前宽度,不管元素是否设置了宽度,css样式时内联 外联或者是内嵌,都可以使用 这个方法获取元素的宽度. 使用原生js style.width .w ...

  5. Kubernetes 集群日志管理 Elasticsearch + fluentd(二十)

    目录 一.安装部署 Kubernetes 开发了一个 Elasticsearch 附加组件来实现集群的日志管理.这是一个 Elasticsearch.Fluentd 和 Kibana 的组合.Elas ...

  6. Dubbo版本升级

    一.背景 早期内部使用的是当当网fork的Dubbox,由于现在Dubbo又开始重新维护,而且阿里将其捐献给了Apache,并成为了Apache的顶级项目.因此dubbo版本升级到2.7.1势在必行. ...

  7. AWD攻防赛之各类漏洞FIX方案

    笔者<Qftm>原文发布<FreeBuf>:https://www.freebuf.com/articles/web/208778.html

  8. Java开发笔记(一百三十一)Swing的列表框

    前面介绍了选择框的用法,当时为了方便用户勾勾点点,无论是复选框还是单选按钮,统统把所有选项都摆在界面上.倘若只有两三个选项还好办,要是选项数量变多比如超过五个,这么多的选择框一齐在界面罗列,不光程序员 ...

  9. day31——recv工作原理、高大上版解决粘包方式、基于UDP协议的socket通信

    day31 recv工作原理 源码解释: Receive up to buffersize bytes from the socket. 接收来自socket缓冲区的字节数据, For the opt ...

  10. Java线程的等待与唤醒完整示例代码

    项目结构: 资源类: 输入线程:  输出线程: 测试: 人妖问题发生: 线程安全问题的解决方法: 调用Object的wait()和notify()方法时需注意:必须是锁对象方可调用,否则将抛出无效的监 ...