预计阅读本页时间:-
如果您想学到更多c与编程方面的知识,您将发现下面的参考会对您有所帮助。
B.1.1 杂志
C/C++ Users Journal
广告:个人专属 VPN,独立 IP,无限流量,多机房切换,还可以屏蔽广告和恶意软件,每月最低仅 5 美元
这是一本月刊(副标题为Advanced Solutions for C/C++ Programmers),它是对C和C++程序员有用的资源。
B.1.2 在线资源
C程序员帮助创建了Internet,而Internet也可以帮助您学习C。Internet处于不断的发展与变化中,下面的资源只是您可以找到的资料的一些例子。
如果您有一个关于C的特别的问题或只是想扩展您的知识,那么也许首选的地方就是浏览C FAQ(常见问题解答)站点:http: //www.eskimo.com/~scs/C-faq/top.htmlo
如果您有关于C库的问题,那么可以从以下站点获得一些信息:http: //www.dinkumware.com/htm_cl/index.Html。
下面的这个站点提供了对指针的全面讨论:http: //pweb.netcom.com/~tjensen/ptr/pointers.Htm。
您也可以使用Google的高级搜索功能来寻找有关特定主题的文章或站点:http: //www.google.com, http://search.yahoo.conlo
有很多可用的在线指南。这里举出两个:http://www-h.eng.cam.ac.uk/help/tpl/languages/ C/teaching_C/teaching_ C.Html和http://www.strath.ac.uk/GG/Clourses/NewCcourse/ccourse.html。
新闻组使您有机会可以在网上进行提问。
新闻组通常都使用你的Internet服务提供商所提供的一个访问帐号来连接阅读。另一种访问的方法是在Web浏览器中输入以下地址:http://groups.google.com。
但是首先您应该花一些时间来阅读新闻组以知道它覆盖了什么主题。例如,如果您有一个关于如何使用C来做某事的问题,就可以试试这个新闻组:Comp.lang.c。
您可以在这里找到愿意并且能够提供帮助的人。问题应该是关于标准C语言的。不要在这里询问如何在UNIX系统中获得无缓冲的输入,对特定平台的问题有专门的新闻组。最重要的是,不要向他们询问如何解答家庭作业中的问题。
如果您有关于对C标准进行解释的问题,试试这个新闻组:comp.std.c。
但是不要在这里询问如何声明一个指向三维数组的指针,这类问题应该到另一个新闻组:comp.lang.c新闻组。
最后,如果您对C的历史感兴趣,C的创始者Dermis Ritchie在以下站点的一篇文章中讲述了C的起源禾卩发展:http: //cm.bell-labs.com/cm/cs/who/dmr/chist.Html。
B.1.3 C语言的书籍
Feuer, Alan R. The C Puzzle Book, second edition. Englewood Cliffs, NJ:Prentice Hall,1989。这本书包含了很多程序,您可以对它们的输出进行预测。预测输出对测试和扩展您对C的理解来说是一个很好的机会。这本书也包括了答案和解释。
Kernighan, Brian W., and Dennis M. Ritchie. The C Programming Language, second edition. Englewood Cliffs, NJ:Prentice Hall,1988。这本书是第一本关于C的书的第二版(注意C的创始者Dennis Ritchie是书的作者之一)。第一版给出了 “K&R”C的定义,很多年来它都是非官方的标准。第二版结合了一些基于ANSI草案做出的变化,在写这本书的时候该草案已经成为标准了。这本书中包含了很多有趣的例子,但是它要求读者熟悉系统编程。
Koenig, Andrew. C Traps and Pitfalls. Reading, MA:Addison-Wesley,1988。本书中文版《C陷阱与缺陷》(7-115-10623-1,30元,2002年11月)已由人民邮电出版社出版。
Summit, Steve. C Programming FAQs. Reading, MA:Addison-Wesley,1995。这本书是Internet FAQ的一个扩展版本。
B.1.4 编程书籍
Kernighan, Brian W.,and P. J. Plauger. The Elements of Programming Style, second edition. New York:McGraw-Hill,1978。这本精简的巨著吸取了其他文章的一些例子,来说明什么是清晰高效的编程而什么不是。
Knuth, Donald E. The Art of Computer Programming,第一卷(基本算法)第三版。Reading, MA:Addison-Wesley,1997。这本标准参考书非常详细地研究了数据表示和算法分析。它是高级和精确的。第二卷(半数学算法,1997)对伪随机数进行了广泛的讨论。第三卷(排序和搜索,1998),就像书名所说明的那样介绍了排序与搜索,以伪代码和汇编语言的形式给出了例子。
Sedge wick,Robert. Algorithms in C:Fundamentals, Data Structures,Sorting, Searching. Reading, MA:Addison-Wesley,1995。顾名思义,这本书介绍了数据结构、排序和搜索。本书中文版《C算法(第一卷)基础、数据结构、排序和搜索(第三版)》(7-115-12276-8,54元,2004年6月)已由人民邮电出版社出版。
B.1.5 参考手册
Harbison, Samuel P. and Steele, Guy L. C:A Reference Manual,fifth edition. Englewood Cliffs, NJ:Prentice Hall,2002。这本参考手册介绍了C语言的规则并描述了大多数标准库函数。它具体讨论了C99并提供了很多例子。《C语言参考手册(第五版)(英文版)》(7-115-11194-4,45元,2003年6月)已由人民邮电出版社出版。
Plauger, P. J. The Standard C Library. Englewood Cliffs, NJ:Prentice Hall,1992。这本大型参考手册描述了标准库函数,其中可以找到比在典型的编译器手册中更多的解释。
The International C Standard. ISO/IEC 9899: 1999。在写本书的时候,可以花 18美元从 www.ansi.org下载这个C标准。不要指望可以从该文档中学会C,因为它并不是作为指南的。这里具有代表性的一句话是:“If more than one declaration of a particular identifier is visible at any point in a translation unit, the syntacticcontext disambiguates uses that refer to different entities(如果一个特定标识符的多次声明在一个转换单元中的任何点处都可见,那么语法可以根据上下文来无歧义地引用不同的实体)”。
B.1.6 C++书籍
Prata, Stephen. C++ Primer Plus, fourth edition.(《C++Primer Plus中文版》,人民邮电出版社, 2002,7)。本书向您介绍C++语言和面向对象编程的原则。
Stroustrup, Bjarne. The C++ Programming Language, third edition. Reading, MA:Addison Wesley,1997。本书是由C++的创始者来写的,介绍了C++语言并包括了C++的参考手册。