Page8,main的原型应该是不需要void作参数的。我试验了codeblock(使用gcc为编译器),没有异常。

另外就是代码应该标记出行号,使用行号指明更清晰一些。

还有一个格式方面的问题是";“在书中单独出现时都是全角中文”;“这个非常糟糕,很容易误解。

还有一个问题是C99还是C89,我的建议是以C89为主介绍,间杂一些C99,但是C89不应该以”过时“来形容,我倒是觉得C89更主流一些。

page9,关于#include""和#include<>的区别,应该指出后面会讨论的章节更好。

page14,关于中文做标识符、变量名、函数名的解释,反而让人比较迷糊。其实我觉得作为一本针对初学者的书籍,最好不要在开始碰这个方面,可以在后面加入一些说明补充。

page16,如表1-1所示,应该说”有些keyword"是C99新增关键字。另外我觉得这个C99其实意义不大,说了反而让人迷惑。在后面附录补充说明一下就可以了。

page19,风格习惯一节,如果说的更详细一点就好了,太简单。另外《狂人C》的代码风格是({}三种风格中)最不常见的一种,应该稍微提一下三种不同风格。

page20,开始一个段落介绍如何让printf分成print\换行加f这种,完全没必要,让人更混乱,而且代码示例如果从缩进来看还是错的。

page20,我觉得应该是”任何一个C程序必须有而且只能有一个入口函数,这个函数绝大多数情况下定义为main。“VC++和GCC都可以通过编译选项修改入口函数(entry function),如果用VC++,通常名字为_tmain()。还有就是main函数有两个可不可以?如果抬杠的讲,通过预定义编译选项,可以定义两个main,嘿嘿。

page20,printf()函数是由C标准库提供(C standard library),而C标准库大多数由操作系统编写者提供,通常情况下GCC只负责把printf()与标准库代码实现编译链接到一起。关于标准库,也可以选择比如DietC这种第三方。windows sdk也提供了标准库的实现,我不是很清楚,但是理论上说GCC应该是可以使用windows SDK提供的include和library的。

page25,应该介绍一下D(ecimal),H(ex)这些单词的完整形式,更好一些。

page29,对于学习、考试、面试而言,我觉得"同名"是一个很值得考的知识点,当然实际工作中就不要这么写了。

page31,由于字体的原因,/* */和//看上去非常奇怪,尤其是//就好像中间有个空格一样。

page31,关于注释,我不太同意书中说法。个人觉得注释只应该在该使用的时候使用,如何注释何时注释,代码大全和程序设计实践这两本书介绍的非常全。

page32,关于变量的定义,其实K&R英文版(一下提到K&R都指的是英文版页码)的page195说的非常清楚,《狂人C》的提法只说了其中一方面,也就是storage object这一面。不完整。

page32,变量使用之前必须声明(declaration),这一点《狂人C》的说法是错误的,对于C语言来讲,声明(declaration)与定义(definition)是很有区别的两回事,不可以互换使用。K&R page40说的非常清楚。而定义(definition)在K&R的page250有说明。

转载于:https://www.cnblogs.com/lua5/archive/2010/12/16/1908639.html

《狂人C》阅读笔记(1)相关推荐

  1. Java程序设计语言(基础篇)机械工业出版社 原属第10版

    链接:https://pan.baidu.com/s/1txoB3sk0SdT1u8RpS2x-Kg  提取码:rxkd  Java程序设计语言(基础篇)机械工业出版社 原属第10版 外加一本Java ...

  2. 计算机浙大网java网站,网络课程—非计算机专业JAVA程序设计语言

    <非计算机专业JAVA程序设计语言> 一.主要目标和主要内容: 该课程面向全校非计算机专业理工类本科生,是程序设计语言类必修的公共基础课之一.该课程的前导课程是<大学计算机基础> ...

  3. 《Effective Java》中文版第3版 读书笔记

    评论中有电子档资源哦  ^_^ 第1章引言 第2章创建和销毁对象 第1条:用静态工厂方法代替构造器 静态工厂方法与构造器不同的第一大优势在于,它们有名称.  静态工厂方法与构造器不同的第二大优势在于, ...

  4. C程序设计语言第二版·新版,C程序设计语言(第2版·新版) PDF扫描版[19MB]

    C程序设计语言(第2版·新版) 内容简介: 本书是由C语言的设计者Brian W. Kernighan和Dennis M. Ritchie编写的一部介绍标准C语言及其程序设计方法的权威性经典著作.全面 ...

  5. C程序设计语言(第2版•新版)电子书pdf下载

    C程序设计语言(第2版•新版)下载链接: https://pan.baidu.com/s/1cQBvkOCaABO8ZWr9vWegdA 提取码获取方式:关注下面微信公众号,回复关键字: 1133

  6. 【博文汇总】Java程序设计语言

    基础 深入理解 Java 的 Hello World 程序 Java字符串使用==进行比较实验测试与分析 Java在输出时显示System.out.print的所在类的行信息. 一个完整的Java版的 ...

  7. 软件设计师-JAVA程序设计语言

    Java语言简介: 背景 1991年 ,SUN MicroSystem公司的 Jame Gosling. Bill Joe等人 ,在电 视.控制烤面包箱等家用消费类电子产品上进行交互式操作的开发,开始 ...

  8. java程序设计 第2版 唐大仕_《Java程序设计(第2版)》唐大仕 源代码

    [实例简介] <Java程序设计(第2版)>唐大仕 清华大学出版社 北方交通大学出版社 [实例截图] [核心代码] bbe30560-8619-4a35-a024-50004cc5c8e2 ...

  9. c#程序设计语言杜松江版_当前最流行的10款编程语言,你会哪种?

    现在市场上对计算机方面的人才需求量非常大,不过真正需要的是那些有技术的高端人才. 下面就是当前流行的编程语言,来看看都用了那些吧! (PS:排名仅代表作者观点,如有不同观点,请务必坚持自我哦~~~). ...

  10. c++学习书籍推荐《C++程序设计语言(特别版)》下载

    百度云及其他网盘下载地址:点我 编辑推荐 <C++程序设计语言(特别版•十周年中文纪念版)>编辑推荐:十周年纪念版,体味C++语言的精妙与魅力,享受与大师的心灵对话.1979年,Biarn ...

最新文章

  1. 一个框架看懂优化算法之异同 SGD/AdaGrad/Adam
  2. 域控制器安装过程中断电!与Windows Server 2008 林功能级别提升之“冬夜”分享...
  3. MySQL 性能测试
  4. 代码设置按钮样式的方法
  5. 设置下载安装 桌面_小妖精美化app最新版下载-小妖精美化V5.3.9.800下载安装
  6. element ui表单验证
  7. Maven详解(转)
  8. 水晶报表设置二维码_随时随地数据分析?老板喜欢的移动端报表,我用这七步做出来了...
  9. windows10系统下设置mtu值的方法
  10. jsp测试mysql_求一段jsp连接mysql的测试程序
  11. python处理excel数据计算_Python处理Excel数据
  12. 发展恐怖故事–邮件炸弹
  13. html微博登录代码,微博第三方登陆js实现
  14. OpenCV绘制朱利亚(Julia)集合图形
  15. 高通SM660平台GPS 简介
  16. 电商api接口:淘宝以图搜图
  17. gif动图可以压缩大小吗?gif图片怎么压缩?
  18. 键盘输入盲打训练, 打字练习,打字游戏 打字教程推荐
  19. 区间DP小结(附经典例题)
  20. oracle 单记录函数,SQL中的单记录函数

热门文章

  1. 阶段1 语言基础+高级_1-3-Java语言高级_08-JDK8新特性_第4节 方法引用_6_方法引用_类的构造器(构造方法)引用...
  2. Spring Boot2.x 的Druid连接池配置[附带监控]
  3. 设置指定打印机端口打印
  4. (递归)666:放苹果
  5. modalTransitionStyle各种present效果
  6. [深入Maven源代码]maven绑定命令行参数到具体插件
  7. web测试 结果存储类型为“Database”,但尚未指定结果储存库连接字符串
  8. C#中string[]数组和liststring泛型的相互转换 【转】
  9. COM 组件实现事件、通知
  10. struts 的radio标记的增强