免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: 无风之谷
打印 上一主题 下一主题

对C语言指针的讨论:应当如何理解、使用指针?《狂人C:程序员入门必备》有奖试读 [复制链接]

论坛徽章:
59
2015七夕节徽章
日期:2015-08-24 11:17:25ChinaUnix专家徽章
日期:2015-07-20 09:19:30每周论坛发贴之星
日期:2015-07-20 09:19:42ChinaUnix元老
日期:2015-07-20 11:04:38荣誉版主
日期:2015-07-20 11:05:19巳蛇
日期:2015-07-20 11:05:26CU十二周年纪念徽章
日期:2015-07-20 11:05:27IT运维版块每日发帖之星
日期:2015-07-20 11:05:34操作系统版块每日发帖之星
日期:2015-07-20 11:05:36程序设计版块每日发帖之星
日期:2015-07-20 11:05:40数据库技术版块每日发帖之星
日期:2015-07-20 11:05:432015年辞旧岁徽章
日期:2015-07-20 11:05:44
151 [报告]
发表于 2010-12-16 21:59 |只看该作者
回复 144# KBTiller


    哈哈。原来是兄弟你写的啊。赠送我一本哈。我都从来不学C的。

论坛徽章:
2
技术图书徽章
日期:2013-09-04 15:21:51酉鸡
日期:2013-11-01 21:20:20
152 [报告]
发表于 2010-12-16 22:08 |只看该作者
您指的是哪章?
    (深夜还在写贴,辛苦了。鞠躬致谢!)
KBTiller 发表于 2010-12-16 11:18


介绍函数的章节。我没有看到讲述:为啥scanf读取一个整型,需要&d,而不是直接d,很多初学者比较遗憾。或是在其他章节讲述了?

论坛徽章:
0
153 [报告]
发表于 2010-12-16 22:08 |只看该作者
回复  KBTiller


    哈哈。原来是兄弟你写的啊。赠送我一本哈。我都从来不学C的。
renxiao2003 发表于 2010-12-16 21:59

    岂敢献丑。怕你的刀太锋利,把我批的体无完肤,出版社非雇人向我飞铁锤不可

论坛徽章:
0
154 [报告]
发表于 2010-12-16 22:10 |只看该作者
介绍函数的章节。我没有看到讲述:为啥scanf读取一个整型,需要&d,而不是直接d,很多初学者比较遗憾。 ...
mirnshi 发表于 2010-12-16 22:08


这个我觉得在讲了指针之后才能讲清楚
所以在函数那章只好大而化之,一笔带过

论坛徽章:
59
2015七夕节徽章
日期:2015-08-24 11:17:25ChinaUnix专家徽章
日期:2015-07-20 09:19:30每周论坛发贴之星
日期:2015-07-20 09:19:42ChinaUnix元老
日期:2015-07-20 11:04:38荣誉版主
日期:2015-07-20 11:05:19巳蛇
日期:2015-07-20 11:05:26CU十二周年纪念徽章
日期:2015-07-20 11:05:27IT运维版块每日发帖之星
日期:2015-07-20 11:05:34操作系统版块每日发帖之星
日期:2015-07-20 11:05:36程序设计版块每日发帖之星
日期:2015-07-20 11:05:40数据库技术版块每日发帖之星
日期:2015-07-20 11:05:432015年辞旧岁徽章
日期:2015-07-20 11:05:44
155 [报告]
发表于 2010-12-16 22:33 |只看该作者
回复 153# KBTiller


    呵呵。不送就算了哈。

论坛徽章:
0
156 [报告]
发表于 2010-12-16 23:20 |只看该作者
代码拼的是思想,不敢苟同,代码毕竟还是技术的积累,思想是技术的升华,这种话太...,真要讲思想就去看编程范式那本书,集百家之长,如果是写讲C的普及读物最好还是就技术论技术,毕竟初学者都是想学习技术而不是空洞的思想理论。

论坛徽章:
0
157 [报告]
发表于 2010-12-16 23:31 |只看该作者
代码拼的是思想,不敢苟同,代码毕竟还是技术的积累,思想是技术的升华,这种话太...,真要讲思想就去看编程 ...
bkp643 发表于 2010-12-16 23:20



    很想知道您是如何界定技术和思想的
    比如结构化程序设计,您算思想还是算技术

论坛徽章:
0
158 [报告]
发表于 2010-12-16 23:35 |只看该作者
转 sagasw (sagasw) 网友的《狂人C》阅读笔记(1)
http://bbs.chinaunix.net/thread-1833295-1-1.html
http://sunxiunan.com/?p=1772

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有说明

论坛徽章:
2
技术图书徽章
日期:2013-09-04 15:21:51酉鸡
日期:2013-11-01 21:20:20
159 [报告]
发表于 2010-12-16 23:56 |只看该作者
本帖最后由 mirnshi 于 2010-12-16 23:59 编辑
转 sagasw (sagasw) 网友的《狂人C》阅读笔记(1)

KBTiller 发表于 2010-12-16 23:35


补充一下:
1. 程序的排版很糟糕,如果再版,建议好好排版
2. printf后面的\,似乎被混用了,感觉程序例子,不是出自一个人(从注释 /**/ 和//也稍微能感觉到)。
3. 流程图/NS盒图,似乎也在混用
4. 一些图的线条有粗有细,和谐一些会更好
5. 对于typedef之类的,个人觉得及早介绍比较好,看着前面用DEFINE去做类似工作,感觉很别扭。
6. include<> 和“”似乎没有解释得很清楚。编译器指定?编译器缺省还是编译器增了了诸如-I的编译参数?
7. 后面的ASCII表,只给十进制的意义不是很大,从编程参考角度,十六进制或二进制的意义更大一些

呵呵,净挑毛病了。罪过罪过。

论坛徽章:
0
160 [报告]
发表于 2010-12-16 23:59 |只看该作者
补充一下:
1. 程序的排版很糟糕,如果再版,建议好好排版
2. printf后面的\,似乎被混用了,感觉程序 ...
mirnshi 发表于 2010-12-16 23:56



    感谢,感谢!
    我对图也很不满意
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP