时隔6年,我又重操C语言,是什么让我如此再下定决心?就是不想让自己所学过的知识就此荒废了,我重新以一个C语言初学者的身份(当然,稍稍有点基础,以前的知识忘得没这么快^_^)温故C语言,学习了几天,果真如此,温故而知新矣。

首先我买了一本《C语言深度解剖》第二版,因为,当年就是这本书把我带进了C语言的大门,真正的说明了C语言精髓的书籍,因为不是计算机专业出生,所以以前介绍C的书籍,无可厚非,知其然,不知其所以然。当年看此书是电子版打印的,我想现在,不差这么点钱,买一本。

C语言从1972诞生以来,一直是编程语言界的主角,长盛不衰。

书到了之后,首先介绍的32个关键字,既熟悉又陌生,逐步认识到C语言的本质,心情豁然开朗,指针的操作记忆犹新。当年以为自己“熟悉C语言”,纯粹是为了找工作,如今细细想之,有点大言不惭。Ps:C语言博大精深,嵌入式、Linux等都会涉及。

复习首先在PC上展开,为了尽快进入C语言的调试工作,我先安装了TDM-GCC,原来他已经很久不更新了,不过https://nuwen.net/mingw.html这里有一个非官方的编译版本,也可以拿来用,他是绿色解压版的mingw。

下载了codeblocks-17.12-nosetup.zip,结合TDM-GCC,就可以开始运行C语言,调试C语言了,如果嫌麻烦,可以直接安装codeblocks-17.12mingw-setup.exe。方便省事。

指针就是C语言的精髓。这句话一点都不为过。学习C语言,一定要学会调试,了解内存的基本机制以及C编译器的便宜特性。有的书说C语言的设计有些反人类,吐槽他的一些特性,百家争鸣吧,我反正也没看过那本书。

Codelite当年还是2.5版本,如今已经12.0了,界面我都不会用了,放弃了。

Eclipse和netbeans需要Java环境,占用内存大,我的笔记本电脑,比较旧,也舍弃之。性能好的电脑可以考虑的。

Vim gcc也是编程界十分强大的工具,结合makefile,makefile有陈皓写的《和我一起写makefile》,经典入门资料。

MinGW Developer Studio也不错,轻量,小巧,可以debug,类似visual C++的界面。

DevCpp当年也是不错的IDE,如今在sourceforge里有下载,最新版是5.11。安装的时候,选择fullsetup,不然,即便选择了mingw的路径也不能调试。

Ch,当年有免费的standard版本7.0,是命令行的,可以当作C语言界的IDLE。当年可以作为cfree的编译器之一,不过c-free5.0不免费,也比较旧了,舍弃之,代替的软件有geany,可以直接编译运行C语言。

IDE总而言之是把编译、生成的技术细节给包装起来了,用户只要自动编译运行调试即可,深入学习,还是要接触makefile。那样才能深入理解技术细节。

最后,比较火热的vscode也可以运行调试C语言,但是目前学不会,放弃了,有一个可以实现的方案就行了,不需要这么多的ide平台。学习C语言才是真正的目的。

做一个小总结,追求小巧,快速,推荐MinGW Developer Studio,DevCpp,但代码自动完成比较弱,内存信息无法查看,想要功能全,界面美,调试功能全,可以查看内存信息,推荐codeblocks,但是首次动比较慢。

功能上:codeblocks>DevCpp>MinGW Developer Studio.其实这和项目是否处于正在开发维护状态有关。

开启速度上,三者正好相反。

C语言集成开发环境使用小记的更多相关文章

  1. 【Python基础学习一】在OSX系统下搭建Python语言集成开发环境 附激活码

    Python是一门简单易学,功能强大的编程语言.它具有高效的高级数据结构和简单而有效的面向对象编程方法.Python优雅的语法和动态类型以及其解释性的性质,使它在许多领域和大多数平台成为编写脚本和快速 ...

  2. Go语言集成开发环境之GoLand安装使用

    下载Go语言开发包 大家可以在Go语言官网(https://golang.google.cn/dl/)下载 Windows 系统下的Go语言开发包,如下图所示. 这里我们下载的是 64 位的开发包,如 ...

  3. C语言集成开发环境vs2017的使用技巧之修改快捷键

    首先这里是说编辑C语言内容,其次开发环境是vs2017(全称:visual studio 2017).像这个开发环境体积大,但你安装的时候不要安装到C盘,然后安装的时候选择模块,比如你不开发网站,就先 ...

  4. Go 语言集成开发环境 GoLand 更新至 2018.1.3 版本

    GoLand 2018.1.3 已发布,这是一个全新的更新,尽管没有带来明显的针对 Go 语言的特定改进,但还是提供了许多与 UI,JavaScript 和 SQL 支持相关的错误修复和改进. 可通过 ...

  5. Windows环境墙内搭建Go语言集成开发环境

    1 安装go环境 太简单略 2 安装vs code 找到微软的官方网站,下载Visual Studio Code,官网地址https://code.visualstudio.com/ 安装完成后进入V ...

  6. 软件-集成开发环境:IDEA(Java 语言开发的集成环境)

    ylbtech-软件-集成开发环境:IDEA(Java 语言开发的集成环境) IDEA 全称IntelliJ IDEA,是用于java语言开发的集成环境(也可用于其他开发语言),IntelliJ在业界 ...

  7. C语言编辑编译及集成开发环境

    C语言编辑编译及集成开发环境 编辑器 在不同的操作系统上使用不同的编辑器,保存源代码文件时,文件名应指出程序的功能扩展名应为.c. 编译器 编译器把源代码编译成机器语言的二进制指令即目标代码生成目标文 ...

  8. 【转】linux和windows下安装python集成开发环境及其python包

    本系列分为两篇: 1.[转]windows和linux中搭建python集成开发环境IDE 2.[转]linux和windows下安装python集成开发环境及其python包 3.windows和l ...

  9. Spark:利用Eclipse构建Spark集成开发环境

    前一篇文章“Apache Spark学习:将Spark部署到Hadoop 2.2.0上”介绍了如何使用Maven编译生成可直接运行在Hadoop 2.2.0上的Spark jar包,而本文则在此基础上 ...

随机推荐

  1. YOLOv1到YOLOv3的演变过程及每个算法详解

    1,YOLOv1算法的简介 YOLO算法使用深度神经网络进行对象的位置检测以及分类,主要的特点是速度够快,而且准确率也很高,采用直接预测目标对象的边界框的方法,将候选区和对象识别这两个阶段合二为一, ...

  2. mysql 生成max+1编号

    #sql info表插入一条数据,number字段根据info表最大number+1插入,若为初始插入,number为100000#在获取本表number最大值时,mysql不允许直接查询本表获取最大 ...

  3. kylin相关问题

    1.Kylin踩坑笔记 - 启动Kylin出现Could not find or load main class org.apache.hadoop.hbase.util.GetJavaPropert ...

  4. Apache Flink 进阶(六):Flink 作业执行深度解析

    本文根据 Apache Flink 系列直播课程整理而成,由 Apache Flink Contributor.网易云音乐实时计算平台研发工程师岳猛分享.主要分享内容为 Flink Job 执行作业的 ...

  5. webpack对脚本和样式的处理

    一.对js处理 webpack本身支持js加载也可以用插件. 1.加载要全局使用的插件比如jquery 在页面用cdn方式引用,然后再webpack.config.js里配置.会让jquery成为全局 ...

  6. CodeForces - 1051D (线性DP)

    题目:https://codeforces.com/problemset/problem/1051/D 题意:一个2行n列的矩形,上面有黑白块,然后问你怎么布置才能有k个连通块,问有多少种方案数 思路 ...

  7. [CSP-S模拟测试]:字符消除2(hash+KMP)

    题目背景 生牛哥终于打通了“字符消除”,可是他又被它的续集难倒了. 题目传送门(内部题52) 输入格式 第一行$n$表示数据组书.接下来每行一个字符串.(只包含大写字母) 输出格式 每组数据输出一个$ ...

  8. 关于CSS中的单位px、em、rem

    首先,px.em.rem都是相对单位: px(pixel像素)是相对于显示器屏幕分辨率的,IE无法调整那些使用px作为单位的字体大小: em是相对于当前对象内文本字体的尺寸,如当前对行内文本的字体尺寸 ...

  9. linux svn 服务器搭建问题

    我的svn版本 svn, version 1.7.14 (r1542130) compiled Nov 20 2015, 19:25:09 Copyright (C) 2013 The Apache ...

  10. webservice 学习笔记 1

    Webservice----------->跨语言服务调用 (视频学习总结) 1-1.有OA系统 需要添加一个功能,登录之后显示天气情况 此时可以使用Webservice eg1: 气象局自己有 ...