![](https://iknow-base.cdn.bcebos.com/lxb/notice.png)
如何评价谭浩强《C程序设计》错误之不完全汇集
1个回答
展开全部
我只想说些良心话。谭浩强主编的《C程序设计》确实有些小错误,还有些程序运行结果甚至与书都不符,但是不知道谁编出的《谭浩强<C程序设计>错误之不完全汇集》(以下简称“汇集”)简直也太诋毁这本书了。
首先,“汇集”总在最小的、甚至小到根本没人去纠结也完全无所谓的地方上抠字眼,“汇集”的作者总认为不应该说“系统”而应该说“编译器”,而且始终在批评这句话“系统本身不自带输入输出语句”,还举例反例说老谭自己砸自己的脚,我就想问一句,这句话哪儿错了?系统难道自带输入输出语句?能输入和输出不是因为预处理了头文件才能用这些命令的吗?再比方说那个“strlwr”函数,书里已经明确说了只能给字符串的大小写进行转换,而且stdio.h里是可以得到这个函数的,那么“汇集”里扯了那么一大堆,和老谭说的有什么区别?【就是仗着《C程序设计》这本书的不完美之处而没事找事!】
其次,“汇集”里对于一些程序的评价,很多地方说得反倒不对了。比如“汇集”里说“%o格式输出c是错误的”、“H o w \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 不能因为新手无知就这样糊弄他们吧”等等,%o不就是八进制而已吗?怎么就不能输出字符?只不过输出了ASCII码的八进制数字而已,弄得好像编译器压根儿不识别似的;一个数组,字符没排满后面本来就全补上了\0,作者说的“糊弄”又是什么意思?怎么不给个解释?最让人无语的是这样一句话“a+=1和a=a+1绝对是不一样,老谭怎么能理解,算了 ”,不好意思,如果你说这两个不一样,那我也不理解了,请你解释一下,干嘛就搪塞一句“算了”?
最后,“汇集”竟然写了将近530页,找到了无数个错误,甚至拿C语言标准的英语原文来做对比,然而前20页就有将近18页说的纯属废话,让人感觉就是在装面子,那么这位作者对于C语言本身的掌握程度又有多少?数据结构、算法和计算机原理又懂多少?我想不用再说了,连同义词都要纠正的人,怎么可能写出好的错误汇集?
《C程序设计》确实有很多不完美之处,也确实不适合作为第一本C语言教程类参考书,但是《谭浩强<C程序设计>错误之不完全汇集》真的更没必要看,希望“汇集”作者能给出解释,不要把你所谓的“有病吧”“咋想的”“算了”作为一个问题的解释,这样的搪塞我们不接受。
原创。但随意转发。
首先,“汇集”总在最小的、甚至小到根本没人去纠结也完全无所谓的地方上抠字眼,“汇集”的作者总认为不应该说“系统”而应该说“编译器”,而且始终在批评这句话“系统本身不自带输入输出语句”,还举例反例说老谭自己砸自己的脚,我就想问一句,这句话哪儿错了?系统难道自带输入输出语句?能输入和输出不是因为预处理了头文件才能用这些命令的吗?再比方说那个“strlwr”函数,书里已经明确说了只能给字符串的大小写进行转换,而且stdio.h里是可以得到这个函数的,那么“汇集”里扯了那么一大堆,和老谭说的有什么区别?【就是仗着《C程序设计》这本书的不完美之处而没事找事!】
其次,“汇集”里对于一些程序的评价,很多地方说得反倒不对了。比如“汇集”里说“%o格式输出c是错误的”、“H o w \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 不能因为新手无知就这样糊弄他们吧”等等,%o不就是八进制而已吗?怎么就不能输出字符?只不过输出了ASCII码的八进制数字而已,弄得好像编译器压根儿不识别似的;一个数组,字符没排满后面本来就全补上了\0,作者说的“糊弄”又是什么意思?怎么不给个解释?最让人无语的是这样一句话“a+=1和a=a+1绝对是不一样,老谭怎么能理解,算了 ”,不好意思,如果你说这两个不一样,那我也不理解了,请你解释一下,干嘛就搪塞一句“算了”?
最后,“汇集”竟然写了将近530页,找到了无数个错误,甚至拿C语言标准的英语原文来做对比,然而前20页就有将近18页说的纯属废话,让人感觉就是在装面子,那么这位作者对于C语言本身的掌握程度又有多少?数据结构、算法和计算机原理又懂多少?我想不用再说了,连同义词都要纠正的人,怎么可能写出好的错误汇集?
《C程序设计》确实有很多不完美之处,也确实不适合作为第一本C语言教程类参考书,但是《谭浩强<C程序设计>错误之不完全汇集》真的更没必要看,希望“汇集”作者能给出解释,不要把你所谓的“有病吧”“咋想的”“算了”作为一个问题的解释,这样的搪塞我们不接受。
原创。但随意转发。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |