用C语言开始编写代码
初级:C语言入门必备
(以下两本书任选一本即可)

C语言是作为从事实际编程工作的程序员的一种工具而出现的,本阶段的学习最主要的目的就是尽快掌握如何用c语言编写程序的技能。对c语言的数据类型、控制流结构、函数、指针等能够有较深入的理解。当然本阶段最重要的是通过大量编写代码实践,培养夯实的编码能力。

建议:如果此刻你还不知道Linux系统或没使用过Linux系统,那么从现在开始使用Linux吧,对于开发者来说,掌握基本的Linux操作、Linux的设计理念,无论从企业招聘需求还是对于学习C语言,都将让你受益匪浅。
c语言入门 Linux学习视频

《C语言程序设计》

作   者:[美]Brian W.Kernighan,[美]Dennis M.Ritchie 著
出 版 社:机械工业出版社

在计算机发展史上,没有哪一种程序设计语言像C语言这样应用的如此广泛。本书原著即为C语言的设计者之一Dennis M.Ritchie和著名的计算机科学家Brian W.Kernighan合著的一本介绍C语言的权威经典著作。目前大量论述c语言程序设计的教材和专著均以此书为蓝本。原著第一版中介绍的C语言成为后来广泛使用的c语言版本——标准C的基础(K&R标准)。人们熟知的“Hello World”程序就是由本书首次引入的。

《C Primer Plus》

作   者:[美]Stephen Prata 著
出 版 社:人民邮电出版社

作者把编程概念和c语言的细节很好地融合在一起。通过大量短小精悍的范例演示一两个概念,为读者提供了很好的练习机会,有助于读者迅速掌握所讲的知识。《C Primer Plus(第五版)中文》专门针对C语言的最新标准C99而作,覆盖了这个新标准所引入的所有重要的新特性,包括扩展的整数类型、变长数组、内敛函数等


编写高效的C代码
中级:C语言与数据结构

在巨大的数据面前如何以最快的速度返回需要的数值,或许是初学者对本部分最常见的理解。在Linux系统中,目录是是”/”根节点为源头的树桩结构,Linux内核中的源代码也大量充斥着数据结构的知识。对于程序员来说,本部分可以对算法不做深入了解,但必须掌握的是这些常见数据结构及算法的使用,如链表,二叉树以及最常用的排序方法等。

《数据结构与算法分析——c语言描述》

作   者:[美]Mark Allen Weiss 著
出 版 社:机械工业出版社

本书是《Data Structures and Algorithm Analysis in C》一书第二版的简体中译本。原书曾被评为20世纪顶尖的30部计算机著作之一,作者Mark Allen Weiss在数据结构和算法分析方面卓有建树,他的数据结构和算法分析的著作尤其畅销,并受到广泛的好评,已被世界500余所大学用作教材。


掌握C库函数,具备编写网络程序及系统函数的能力
高级:系统的程序设计接口

在巨大的数据面前如何以最快的速度返回需要的数值,或许是初学者对本部分最常见的理解。在Linux系统中,目录是是”/”根节点为源头的树桩结构,Linux内核中的源代码也大量充斥着数据结构的知识。对于程序员来说,本部分可以对算法不做深入了解,但必须掌握的是这些常见数据结构及算法的使用,如链表,二叉树以及最常用的排序方法等。

《深入理解计算机系统》

作   者:[美]Randal E.Bryant [美]David O'Hallaron著
出 版 社:中国电力出版社

从程序员的视角,看计算机系统! 本书适用于那些想要写出更快、更可靠程序的程序员。通过掌握程序是如何映射到系统上,以及程序是如何执行的,读者能够更好的理解程序的行为为什么是这样的,以及效率低下是如何造成的。粗略来看,计算机系统包括处理器和存储器硬件、编译器、操作系统和网络互连环境。而通过程序员的视角,读者可以清晰地明白学习计算机系统的内部工作原理会对他们今后作为计算机科学研究者和工程师的工作有进一步的帮助。它还有助于为进一步学习计算机体系结构、操作系统、编译器和网络互连做好准备。
 

《Unix网络编程 卷1:套接字联网API》

作   者:[美]W.Richard Stevens [美]Bill Fenner [美]Andrew M.Rudoff 著
出 版 社:人民邮电业出版社

顶级网络编程专家Bill Fenner和Andrew M.Rudoff应邀执笔,对W.Richard Stevens的经典作品进行修改。本书面向的读者是那些希望自己编写的程序能够使用称为套接字(socket)的API进行彼此通信的人。本书达到的目标是向大家提供网络编程指导。这些内容不仅适用于专业人士,也适用于初学者。不仅适用于维护已有代码,也适用于开发新的网络应用程序;此为,还适用于那些只是想了解一下自己系统中网络组件的工作原理的人。

《Unix环境高级编程》

作   者:[美]W.Richard Stevens [美]Stephen A.Rago 著
出 版 社:人民邮电出版社

十多年来,无数程序员都依靠一本书深入理解驱动Unix和Linux内核的编程接口的实用知识,这本书就是已故的W.Richard Stevens所著。W.Richard Stevens是备受赞誉的技术作家,生前著有多种经典的传世之作,包括《Unix网络编程》(两卷)、《TCP/IP详解》(三卷本)和本书

《TCP/IP详解 卷1:协议》

作   者:[美]W.Richard Stevens 著
出 版 社:机械工业出版社

完整而详细的TCP/IP协议指南。描述了属于每一层的各个协议以及它们如何在不同操作系统中运行。作者用Lawrence Berkeley实验室的tcpdump程序来捕获不同操作系统和TCP/IP实现之间传输的不同分组。对tcpdump输出的研究可以帮助理解不同协议如何工作。


辅助读物

《GNU Make》

作   者:[美]Robert Mecklenburg 著
出 版 社:东南大学出版社

尽管出现了许多新兴的竞争者为何make仍旧是开发项目中编译软件的道选工具。本书主要探索GNu make所提供的强大扩充功能。GNu make之所以广受欢迎是因为它是一个自由软件,并且几乎可以在包括微软Windows(作为Cygwin)的每个平台上使用。

《C专家编程》

作   者:[美]Peter Van Der Linden 著
出 版 社:人民邮电出版社

本书可以帮助有一定经验的C程序员成为C编程方面的专家,对于具备相当的C语言基础的程序员,本书可以帮助他们在C的高度了解和学习C++

《C陷阱与缺陷》

作   者:[美]Andrew Kocnig 著
出 版 社:机械工业出版社

AndrewKoenig自己在Bell实验室时发表的论文为基础,结合自己的工作经验扩展成这本对C程序员具有珍贵价值的经典著作。写作《C陷阱与缺陷》的出发点不是要批判C语言,而是要帮助C程序员绕过编程过程中的陷阱和障碍。
《C陷阱与缺陷》所揭示的知识,至少能够帮助你减少C代码和初级C++代码中90%的Bug。
——Francis Glassborow,ACCU主席

《C和指针》

作   者:[美]Kenneth A.Reek 著
出 版 社:人民邮电出版社

本书通过对指针的基础知识和高级特性的探讨,帮助程序员把指针的强大功能融入到自己的程序中去。全书共18章,覆盖了数据、语句、操作符和表达式、指针、函数、数组、字符串、结构和联合等几乎所有重要的C编程话题。 本书适合C语言初学者和初级c程序员阅读,也可作为计算机专业学生学习C语言的参考。

c语言入门教程 / c语言入门经典书籍的更多相关文章

  1. 【转】c语言入门教程 / c语言入门经典书籍

    用C语言开始编写代码 初级:C语言入门必备 (以下两本书任选一本即可) C语言是作为从事实际编程工作的程序员的一种工具而出现的,本阶段的学习最主要的目的就是尽快掌握如何用c语言编写程序的技能.对c语言 ...

  2. Mac OS 10.15系统入门教程 系统语言输入法详解

    对于一些Mac新手来说呢还不知道偏好设置到底是什么?有什么用处?其实Mac系统内的几乎所有的系统相关的设置都会在系统偏好设置内出现. 切换系统语⾔在语言与地区设置中拖拽左侧的语言条目就可以切换系统的语 ...

  3. JavaScript 入门教程四 语言基础【3】

    一.数据类型介绍: String 1.是使用 Unicode 字符组成的字符序列.所以可以容纳各种语言. 2.字符串可以使用双引号(“”)或者单引号('')表示,但必须成对出现. 3.转移序列使用 \ ...

  4. JavaScript 入门教程三 语言基础【1】

     一.基本介绍 1.JavaScript 是一种区分大小写的语言.(var Hello 与 var hello 是不同的变量) 2.JavaScript 中标志符就是指变量.函数.属性的名字,或者函数 ...

  5. Java入门教程二(语言基础)

    常量与变量 常量值又称为字面常量,它是通过数据直接表示 常量 实型常量值 Java 的实型常量值主要有如下两种形式 十进制数形式:由数字和小数点组成,且必须有小数点,如 12.34.-98.0 科学记 ...

  6. JavaScript 入门教程四 语言基础【2】

    一.数据类型介绍: undefined null NaN 1.判断当前变量是否为 undefined: if (i === undefined) 或者 if (typeof (i) === " ...

  7. python基础入门教程《python入门经典》

    第一章 在python中使用数字 1.用变量存储信息 1.1变量的类型 变量,用于存储很多不同的数据类型的信息. 基本数据类型 数据类型 存储内容 示例 integer 整   float 浮点   ...

  8. Netty学习_Netty框架入门教程:Netty入门之HelloWorld实现

    我们可能都学过Socket通信/io/nio/aio等的编程.如果想把Socket真正的用于实际工作中去,那么还需要不断的完善.扩展和优化.比如很经典的Tcp读包写包问题,或者是数据接收的大小,实际的 ...

  9. 前端组件化Polymer入门教程(3)——快速入门

    本系列主要翻译官方的教程,因为国内目前这方面的资料太少了,但也不一定和官网的一样,反正就是自己想到哪就写到哪. 如果我没有说明,默认情况下index.html始终包含这段代码,后面将不会再贴上来. & ...

随机推荐

  1. Python访问私有变量

    代码: class Counter(object): __secount=0 publicfs=0 def getcount(self): self.__secount+=1 self.publicf ...

  2. Android Eclipse 里面依赖工程无法关联源码解决方案

    android开发中,debug调试是一种非常实用快速定位问题的办法.eclipse中多工程依赖状态下会偶现无法debug的困扰,debug中的代码执行时会报出如下错误  The JAR of thi ...

  3. ormlite性能对比

    看了一下现在的android设备,性能都不差,就懒得直接用sqlite,直接上ORM框架把,上网搜了一圈,觉得androrm, ormlite 这两个不错,当然,还有点别的,这里就不多做介绍,竟然说明 ...

  4. CVU介绍

    ORA.CVU  New resource (Cluster Verification Utility) is added in 11.2.0.2 Unlike the previous resour ...

  5. C# 学习的随笔【随时更新】

    1.结束自己 Application.Exit(); //这个东西有重载函数

  6. Arrays

    Arrays:用于操作数组对象的工具类,里面都是静态方法. asList方法:将数组转换成list集合. String[] arr = {"abc","kk", ...

  7. 通过weka.jar包来进行数据预处理

    前言:注意首先要将weka.jar包加载到相应的路径中去.程序中的数据也是用的weka自带的数据. 扩展:eclipse添加jar包的操作方法: 打开eclipse ,在对应的工程下右击,选择Buil ...

  8. android View 自动 GONE 问题

    首先说一下 view visibility VISIBLE.INVISIBLE.GONE的区别: 可见(visible) XML文件:android:visibility="visible& ...

  9. 加链接太麻烦?使用 linkit 模块提升用户编辑体验

    在制作网站内容时,适当地添加链接会非常用利于网站内容的SEO.加入链接的文章可以让访客了解到更多相关内容,从而提升文章的质量.被链接到的内容也能因此获得更多的访问和关注.只不过,在内容编辑时添加链接却 ...

  10. Bug修复问题

    采用下面的代码,访问网页:http://www.weather.com.cn/data/cityinfo/101010100.html,想读取下图中红框中的内容,但是抛出了IOException,通过 ...