选什么教材来学习C语言?
上一篇文章大家提到C语言的发明者丹尼斯·赫伯特(Dennis Ritchie),他于1972年上下创造了C语言,C语言里的时间也/日期测算起始点,有一个unix timestamp(unix 时间格式)是 Jan 1, 1970 UTC。即 1970年1月1日,是UNIX年间。
C缘故创造发明迄今贴近50年多,达到五十知天命的年纪了。大家想想,你10年以前所使用的商品到现在还在使用的能有多少呢?在飞速发展的计算机相关,增长速度也是令人震惊,你以前常常访问网站、玩过的游戏手机游戏能够坚持10年有多少呢?大伙儿回头再看看C语言,在2019年7月的电子计算机语言榜单上,50岁C语言居高第2名!
2019年7月电子计算机语言排名榜
时长、时兴度早已充分说明了C语言蓬勃的生命力!高校大一新生一般都设立C语言课程内容,选用的教材一般是谭浩强先生的,见下图:
谭浩强《C程序设计》第五版
黄色的封皮、1400部书的投放量充分说明了这个使用率。但是大家在知乎等检索这部教材,就会发现埋怨颇有(这儿并未对谭浩强老先生表示不敬的含意),调侃书里描述和程序错误颇有,最主要的大家都认为此书过度授课语言的基础知识,而非程序编写的乐趣,及其用程序编写来解决问题能力!
那如果让我来推荐一本学习C语言的教材,我能强烈推荐文中要推荐的角色鲍比·克尼汉和C语言发明者丹尼斯·赫伯特一同撰写的《C编程设计语言》!这儿绝对不是做广告。
K&R C编程设计语言
最先这书很简短,288页罢了,没有什么大的心理压力。抛开无需的chapter 1和8,此外有时候chapter 6 structures由于学时问题会不谈,最多也就是120-140来页,一点阅读文章压力也没有。此外,二位创作者都擅于写“教材”,语言简约清新,表述却比较清楚和完善。做为C的创始者和与此同时有着丰富的开发设计历经(他们也是Unix的开发人员),她们给的提议和判断的设计风格,都是很有规范性。做为新手,学规范化的物品无疑是最为明智的选择。这儿的标准,不单单是最基本的编码形式上标准。学会了不良习惯再改一直一件困难的事。
K&R
最初,C语言并没有官方网规范。1978年贝尔实验室宣布发布了C语言。鲍比·克尼汉(Brian Kernighan)和丹尼斯·赫伯特(Dennis Ritchie)出版《The C Programming Language》。这书被 C语言开发人员们称之为K&R,好多年来被当成 C语言的非正规标准的表明。人们称这一版本 C语言为K&R C。到此,鲍比·克尼汉(Brian Kernighan)和丹尼斯·赫伯特(Dennis Ritchie)两个人通称K&R。
鲍比·克尼汉
鲍比·克尼汉在1942年出生于加拿大多伦多,她在布朗大学获得了电气专业的博士研究生,2000年以后获得布朗大学电子信息科学的专家教授教师。
他和Shen Lin协作互相配合了几个有名气的NP-complete优化问题解决方案:图区划问题与旅游销售员难题。旅游销售员难题(Travelling Salesman Problem, 也称为旅行商问题、货郎担难题、TSP难题)是一个多局部最优的最优化问题:有n个大城市,一个推销员可以从在其中某一个大城市考虑,唯一踏遍所有的城市,再回他出发大城市,求最少路线。
鲍比·克尼汉除开和丹尼斯·赫伯特编写了《C编程设计语言》以外,还编写了《UNIX编程环境》,这书对UNIX电脑操作系统的编程环境进行了具体而深层次讨论,基本内容UNIX的系统文件、Shell、过虑程序流程、I/O程序编写、系统进程等,对其UNIX里的软件开发方式进行了有目的性的具体指导。
鲍比·克尼汉在布朗大学为非计算机专业学生们设立了一门详细介绍电子信息技术基本课程内容,依据课程讲义撰写《D is for digital》——中文译名《世界是数字的》。书里回答了现如今计算和通信领域的工作状态,包含硬件配置、手机软件、互联网等,探讨了新技术应用所带来的社会发展、政治和法律风险。
鲍比·克尼汉最新发布的经典著作
AWK
awk是由Alfred Aho 、Peter Weinberger和Brian Kernighan这三个人创造出来的,awk由这一三个人的姓氏的第一个英文字母构成。
awk初期是在unix上实现的,因此,现在我们在linux的所用的awk实际上是gawk,其实就是GNU awk,称之为gawk,awk还有一个版本号,New awk,称之为nawk,可是linux中常用还是gawk。
awk其实就是一门程序编写语言,它适用条件判断、二维数组、循环系统等服务。因此,我们可以把awk理解为一个脚本制作语言编译器。可以借助awk命令,将一些文字整理成大家想要的样子,比如把一些文字整理成“表”的模样,然后呈现出来。
grep 、sed、awk被称作linux中的“三剑客”。总结一下这三个“侠客”的专长:
grep:更合适单一的搜索或配对文字
sed:更合适编写匹配到的文字
awk:更合适格式化硬盘文字,对文章开展较繁杂文件格式解决
下列就是awk的程序实例:
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。