到目前为止,我已经读到了《C与指针》第十六章,总共十八章,接下来的章节内容分别是标准函数库、数据结构、以及C语言的运行环境,还没有完全做完练习就写这篇读后感原因有二,第一个当然是最主要的,这本书的前面十五章已经差不多完全概括这门语言的精髓了,第二个原因就是我很懒,懒得做下面的习题,这些习题的答案在网上都找得到,不过中文的解释倒是不多,所以我才一边做练习一边试着翻译答案,不过英语水平确实不太高,翻译的也不太好,大概意思吧。

  接下来说正题,这本书--《C与指针》,这本书并不是很适合初学者,尤其是一上来就学习C语言的人,在此之前没有任何基础,因为这本书的难度系数还是偏高的,说到书的推荐,关于C语言的书,众说纷纭,有的说什么谭浩强的书啊,有的说读C语言之父写的Program in C啊之类的,那本谭浩强的我倒是没看过,不过听名字就感觉不咋地(不是我有意诋毁,只是看目录就觉得不想学习),那本Program in c我倒是有,不过没坚持读完,启蒙书是我们学校发的那本教材,是一本 超烂的教材,不过要感谢我们C语言老师,他让我们做了很多习题,之后我也算是稀里糊涂的入了门,说真的,要快速入门的最好方法其实跟书的好坏关系并不大,你多抄几个练习,然后自己默写几遍,反复做那几个典型的题熟悉语句就好了,比如说计算闰年啊,是不是素数啊,兔子生宝宝啊之类的,关键是熟悉C语言的语法和对编程形成一种感觉,我要解决一个问题,如何用编程实现呢?差不多熟悉这门语言之后再来谈谈书的好坏。讲偏了,这本书适合什么人呢?我觉得吧,适合我,哈哈,开个玩笑,这本书很久之前我就买了,也读了,不过读到第八章函数之后我就没读了,因为有些读不下去了,那个时候我也已经入门了,不过这本书还是有许多内容读的不是很懂,而现在的我读这本书时的感觉就是,这本书真的是宝贝,写得太好了,这是我读过的最好的C语言的书,这让我明白了好多普通C语言书里没有的东西,也让我了解到C++是继承于C语言的,它的每一点在C语言中都可以找到踪迹,另外为什么说C语言能够让你了解许多硬件知识,都有深刻的体会,那么,适合什么人呢?决定你想要看这本书的内容,如果你只打算像别的书本一样,看他讲函数,数组,普通指针,各种语句,表达式,那么你入门C语言之后就能看了,毕竟如果没有犯过错误就不知道警告的含义,这本书中警告的内容都是相当值得注意的,可以说不管是什么人,即便是很熟练的程序员也可能会犯这种错误,如果你准备深入了解这门语言,那么你应该至少了解汇编语言,这本书有部分内容使用了汇编语言进行解释和比较,另外十六章里面的setjmp这种类goto语句的内容就是继承自汇编的,在汇编里我们差不多经常用jump这种指令来完成我们的程序,你会在C语言中发现它继承自汇编的内容,另外一个建议就是,最好了解使用一下linux系统,在window的VS下面编程不仅仅是说你学习不到整个程序完成的过程,还有就是会使你在使用命令行上成为一个白痴,而不会使用命令行你会失去很多乐趣的,在本书的第十五章里面,就涉及到编写一些命令行参数以及怎样实现一些基本的命令,看完这部分内容,你对命令行也不会这么陌生了,你可以修改你的linux系统的命令,可以查看源码,也可以增加一些命令,总之这种感觉应该相当不错,最后最基本的一点,你还是得懂一些计算机原理吧,比如内存啊,指令的执行啊,不过这些内容在学习汇编的时候是可以学到的,这里对汇编语言推荐王爽老师的书,linux的话自己去琢磨,下个linux系统安装也就十几分钟的样子,网上教程相当多。

  至于这本书最后一部分,甚至还给出了C语言和汇编语言的接口,这意味着你可以自己把硬件部分和软件结合一下,在汇编里不是有关于键盘设备的读取吗,像SDL之类的游戏引擎的键盘控制读取这些你就能想到是怎么实现的了,想想还是觉得很有意思呢,对于十七章的数据结构,将在接下来的《数据结构与算法分析-C语言描述》这本书的练习和阅读中细讲,认真读完C与指针,你将会体验到C语言真正的魅力。

《C与指针》读后感的更多相关文章

  1. 《DevOps软件架构师行动指南》读后感

    从软件架构师视角讲解了引入DevOps实践所需要拥有的技术能力,涵盖运维.部署流水线.监控.安全与审计以及质量关注,这是本书一开始内容简介的开头,本书的作者是伦恩·拜斯(Len Bass).英戈·韦伯 ...

  2. nodejs开发指南读后感

    nodejs开发指南读后感 阅读目录 使用nodejs创建http服务器; supervisor的使用及nodejs常见的调式代码命令了解; 了解Node核心模块; ejs模板引擎 Express 理 ...

  3. DevOps:软件架构师行动指南(文摘)

    第一部分 背景 第1章 DevOps是什么 第二部分 部署流水线 第三部分 横切关注点 第四部分 案例研究 第五部分 走向未来

  4. 2020年DevOps工程师入门指南

    DevOps兴起于2010年代,到现在DevOps已经在行业中拥有了一席之地,并在继续发展壮大. 有兴趣成为一名DevOps工程师吗?如果想要成为一名DevOps工程师,需要做到以下五点: 要有开发者 ...

  5. 5月29日 Java性能调优指南 读后感

    并行垃圾收集器 串行垃圾收集器 并发标记清除(CMS)垃圾收集器 Garbage First(G1)垃圾收集器 没有深入的学习G1的原理,只是看了大概的思想; SA工具:待学习

  6. 敏捷开发、DevOps相关书籍——书单

    自己瞎整理的一些书单,都是豆瓣评分比较高的书,可以作为选择的一个参考. 书名 豆瓣链接 持续交付:发布可靠软件的系统方法 https://book.douban.com/subject/6862062 ...

  7. 有奖试读—Windows PowerShell实战指南(第2版)

    为什么要学PowerShell? Windows用户都已习惯于使用图形化界面去完成工作,因为GUI总能轻易地实现很多功能,并且不需要记住很多命令.使得短时间学会一种工具成为可能. 但是不幸的是,GUI ...

  8. [转载]你所不了解的DevOps

    DevOps开发运维训练营 一旦建立了创新的文化,即使那些并非科学家或者工程师的人——诗人.演员.记者——也能以团体的形式,接受科学文化的意义.他们信奉创新文化的概念.他们以促进这种文化的方式投票.他 ...

  9. 给 DevOps 初学者的入门指南

    当我们谈到 DevOps 时,可能讨论的是:流程和管理,运维和自动化,架构和服务,以及文化和组织等等概念.那么,到底什么是"DevOps"呢? 什么是DevOps 随着软件发布迭代 ...

  10. CI Weekly #3 | 关于微服务、Docker 实践与 DevOps 指南

    CI Weekly 围绕『 软件工程效率提升』 进行一系列技术内容分享,包括国内外持续集成.持续交付,持续部署.自动化测试. DevOps 等实践教程.工具与资源,以及一些工程师文化相关的程序员 Ti ...

随机推荐

  1. MiniTwitter记住密码等功能实现

    一.SharedPreferences的用法:(相关实现功能的只是了解) 由于SharedPreferences是一个接口,而且在这个接口里没有提供写入数据和读取数据的能力.但它是通过其Editor接 ...

  2. No module named * 但是已经安装了找不到解决办法

    错误现象,把\Lib\site-packages下的安装包挪动位置到新的位置后(多个Python.exe运行位置)引起这类错误 No module named * 但是已经安装了 解决过程,先试图卸载 ...

  3. asp.net文件下载文件另存为

    这是一个困惑已久的问题…… 首先,用<a>标签的href打开浏览器能解读的文件(如txt,jpg,pdf等),会自动打开,无法做到弹出另存为的效果. 其次,网上搜索了各种JS解决办法,包括 ...

  4. 近期编程问题——epoll failed:bad file descriptor

    出现问题:epoll_wait:Bad file descriptor 原因:IO时间的socket描述符在epoll_ctl处理前就关闭了. 解决方法:不要在epoll_ctl之前关闭socket描 ...

  5. 界面绚丽的SharePoint仪表盘控件Nevron Gauge for SharePoint 控件详细介绍

    Nevron .NET Vision 是一款用于创建独特的.强大的数据表示应用程序的最终控件,它具有超强的数据可视化性能. 整合了Nevron Chart for .NET, Nevron Diagr ...

  6. web 页面上纯js实现按钮倒计数功能

    需求构思:本功能想实现的是,一个按钮在页面载入就显示提醒续费,,,倒数60秒后,完成提醒功能,可以按另外一个页面跳转到主页. 参考网上的大神,实现如下:Button2倒数,Button3跳转,在页面上 ...

  7. SQLSERVER如何获取一个数据库中的所有表的名称、一个表中所有字段的名称

    1.查询数据库中的所有数据库名: SELECT Name FROM Master..SysDatabases ORDER BY Name 2.查询某个数据库中所有的表名: SELECT Name FR ...

  8. linux密码的更改

    找到UTF-8,在后面空格后输入init=/bin/sh  然后CHRL+X启动 进入到这个界面,输入mount -o remount,rw / 再输入touch / .autorelabel ,然后 ...

  9. SharePoint Site "Language Settings"功能与CSOM的对应

    博客地址:http://blog.csdn.net/FoxDave SharePoint网站中的语言设置:"Language Settings",可以用CSOM通过Site的一些 ...

  10. Tapestry

    Tapestry1)概述:Tapestry 是一个全面web application 框架,是使用JAVA 写的.Tapestry 不是一个application server,Tapestry 是一 ...