当前位置:首页 » 编程语言 » 深入体验c语言项目开发光盘

深入体验c语言项目开发光盘

发布时间: 2024-10-16 19:47:48

c语言入门买什么书好

1、基础(C语言入门,初学,编程基础)

《C语言程序设计:现代方法》(第2版)(C
Programming: A Modern Approach, 2nd Edition, K.N.King)

《深入理解计算机系统》(修订版或第2版)(Computer Systems: A Programmer's Perspective,
Randal E. Bryant et al),阅读建议

《C语言程序设计》(第2版)(The
C Programming Language, Brian W. Kernighan & Dennis M.
Ritchie)

《程序员修炼之道》(The
Pragmatic Programmer: From Journeyman to master, Andy
Hunt & Dave Thomas)

2、内核/驱动

《Linux内核设计与实现》(第3版)(Linux
Kernel Development, 3rd Edition, Robert Love)

《Linux设备驱动程序》(第3版)(Linux
Device Driver, 3rd Edition, Jonathan Corbet et al)

《深入Linux内核架构》(Professional
Linux Kernel Architecture, Wolfgang Mauerer)

3、应用

《UNIX网络编程》(Unix
Network Programming, W. Richard Stevens)

《UNIX环境高级编程》(Advanced
Programming in the UNIX Environment, W. Richard Stevens)

4、进阶

《C陷阱与缺陷》(C Traps and Pitfalls, Andrew Koenig)

《C专家编程》(Expert C Programming, Peter
van der Linden)

《ARM嵌入式系统开发:软件设计与优化》(ARM
System Developer's Guide: Designing and Optimizing System Software,
Andrew Sloss et al)

      ㈡ c语言编程怎样入门

      相对于其他编程语言,C语言还是比较难的。初学者需要注意一下几点:
      一是学习顺序
      先从熟悉简单的C语言语法开始入门,然后再循序渐进,学习C++语法,WIN32、MFC、QT、网络编程,数据库、数据结构、算法、COM、STL等。构建一个完整的C语言知识体系。这需要一个比较漫长的学习积累的过程。语法入门部分大概2-3个月,其他部分需要学习和工作中慢慢理解和消化了。
      二是学习方法
      人的知识80%是通过眼睛获取的,但是学习编程有所不同,除了看书、看视频之外,关键是要勤动手,勤动脑。通过做大量的练习、项目实战不断积累代码量。只有代码量足够多了,项目做的多了,才能算是真正学会了。项目能否完成,就是衡量是否学会的唯一标准。后期就是代码的质量和优化问题了,这个只能在项目工作中慢慢积累经验了。
      最后强调一点,很多人学不会编程是因为掉坑里了。就是教程或者书上的知识点之间跨越太大,作为一个初学者很难自己摸索出来,前面的知识点没有掌握,接着学习后面的知识,肯定是学不会了。目前绝大多数编程书籍和教程或多或少都有这样的弊端。自学能力比较强的人可以通过各种方法,参考各种网上的资料自己解决。但是大多数自学能力不是很强的人,只能依赖老师、同学、同事或者朋友帮忙指导,或者报名培训机构,老师指导完成了。学习编程通常需要一些好的学习资料,包括纸质的书籍,视频教程,课件,项目练习,代码。零基础入门的书籍推荐《明解C语言》、《C Primer Plus》,还有一本非常特别的汇编和C语言正向逆向结合的书编程达人内部教材《汇编、C语言基础教程》也非常不错,讲解汇编和C语言的本质非常透彻,非常细致。视频资料也是特别多了,各种视频网站、论坛、自媒体都有,比如网易课堂、腾讯课堂、慕客网这些。还有一些论坛,比如CSDN、编程中国等。最重要的一点就是答疑服务,推荐爱达人的网站也很不错,从零基础入门到应用课程,配套的视频、课件、代码、项目、答疑服务都有,还可以兼职接单,学以致用。

      ㈢ 学习C语言 必看的书籍

      给C++初学者的50个忠告
      1.把C++当成一门新的语言学习(和C没啥关系!真的。);
      2.看《Thinking In C++》,不要看《C++变成死相》;
      3.看《The C++ Programming Language》和《Inside The C++ Object Model》,不要因为他们很难而我们自己是初学者所以就不看;
      4.不要被VC、BCB、BC、MC、TC等词汇所迷惑——他们都是集成开发环境,而我们要学的是一门语言;
      5.不要放过任何一个看上去很简单的小编程问题——他们往往并不那么简单,或者可以引伸出很多知识点;
      6.会用Visual C++,并不说明你会C++;
      7.学class并不难,template、STL、generic programming也不过如此——难的是长期坚持实践和不遗余力的博览群书;
      8.如果不是天才的话,想学编程就不要想玩游戏——你以为你做到了,其实你的C++水平并没有和你通关的能力一起变高——其实可以时刻记住:学C++是为了编游戏的;
      9.看Visual C++的书,是学不了C++语言的;
      10.浮躁的人容易说:XX语言不行了,应该学YY;——是你自己不行了吧!?
      11.浮躁的人容易问:我到底该学什么;——别问,学就对了;
      12.浮躁的人容易问:XX有钱途吗;——建议你去抢银行;
      13.浮躁的人容易说:我要中文版!我英文不行!——不行?学呀!
      14.浮躁的人容易问:XX和YY哪个好;——告诉你吧,都好——只要你学就行;
      15.浮躁的人分两种:a)只观望而不学的人;b)只学而不坚持的人;
      16.把时髦的技术挂在嘴边,还不如把过时的技术记在心里;
      17.C++不仅仅是支持面向对象的程序设计语言;
      18.学习编程最好的方法之一就是阅读源代码;
      19.在任何时刻都不要认为自己手中的书已经足够了;
      20.请阅读《The Standard C++ Bible》(中文版:标准C++宝典),掌握C++标准;
      21.看得懂的书,请仔细看;看不懂的书,请硬着头皮看;
      22.别指望看第一遍书就能记住和掌握什么——请看第二遍、第三遍;
      23.请看《Effective C++》和《More Effective C++》以及《Exceptional C++》;
      24.不要停留在集成开发环境的摇篮上,要学会控制集成开发环境,还要学会用命令行方式处理程序;
      25.和别人一起讨论有意义的C++知识点,而不是争吵XX行不行或者YY与ZZ哪个好;
      26.请看《程序设计实践》,并严格的按照其要求去做;
      27.不要因为C和C++中有一些语法和关键字看上去相同,就认为它们的意义和作用完全一样;
      28.C++绝不是所谓的C的“扩充”——如果C++一开始就起名叫Z语言,你一定不会把C和Z语言联系得那么紧密;
      29.请不要认为学过XX语言再改学C++会有什么问题——你只不过又在学一门全新的语言而已;
      30.读完了《Inside The C++ Object Model》以后再来认定自己是不是已经学会了C++;
      31.学习编程的秘诀是:编程,编程,再编程;
      32.请留意下列书籍:《C++面向对象高效编程(C++ Effective Object-Oriented Software Construction)》《面向对象软件构造(Object-Oriented Software Construction)》《设计模式(Design Patterns)》《The Art of Computer Programming》;
      33.记住:面向对象技术不只是C++专有的;
      34.请把书上的程序例子亲手输入到电脑上实践,即使配套光盘中有源代码;
      35.把在书中看到的有意义的例子扩充;
      36.请重视C++中的异常处理技术,并将其切实的运用到自己的程序中;
      37.经常回顾自己以前写过的程序,并尝试重写,把自己学到的新知识运用进去;
      38.不要漏掉书中任何一个练习题——请全部做完并记录下解题思路;
      39.C++语言和C++的集成开发环境要同时学习和掌握;
      40.既然决定了学C++,就请坚持学下去,因为学习程序设计语言的目的是掌握程序设计技术,而程序设计技术是跨语言的;
      41.就让C++语言的各种平台和开发环境去激烈的竞争吧,我们要以学习C++语言本身为主;
      42.当你写C++程序写到一半却发现自己用的方法很拙劣时,请不要马上停手;请尽快将余下的部分粗略的完成以保证这个设计的完整性,然后分析自己的错误并重新设计和编写(参见43);
      43.别心急,设计C++的class确实不容易;自己程序中的class和自己的class设计水平是在不断的编程实践中完善和发展的;
      44.决不要因为程序“很小”就不遵循某些你不熟练的规则——好习惯是培养出来的,而不是一次记住的;
      45.每学到一个C++难点的时候,尝试着对别人讲解这个知识点并让他理解——你能讲清楚才说明你真的理解了;
      46.记录下在和别人交流时发现的自己忽视或不理解的知识点;
      47.请不断的对自己写的程序提出更高的要求,哪怕你的程序版本号会变成Version 100.XX;
      48.保存好你写过的所有的程序——那是你最好的积累之一;
      49.请不要做浮躁的人;
      50.请热爱C++!

      建议你买本书,书比网上的电子版教程好的多,如计算机届超级权威教授 谭浩强 老先生写的《C语言程序设计(第三版)》,全国发行了700万册,可以说是学C语言的人必看的书,我们大学就用这本书,很适合自学,通俗易懂

      建议你学习其它计算机知识时也看他的书,他出的书很多,涵盖面广,每一本都很经典

      这里有他的教程word版下载

      另外,机械工业出版社的 计算机丛书系列也相当经典,全是翻译国外经典教材,国外计算机发展早,水平比国内高很多,看这些教材事半功倍,推荐(美)Al Kelley Ira Pohl的《C语言教程第4版》

      学习程序语言要持之以恒,不浮躁,祝你成功!

      ㈣ 介绍几本c语言的代码练习书

      C程序设计之四书五经
      荣耀/文
      引言 自从Dennis M.Ritchie于1973年设计并实现C语言以来,计算机程序设计领域已经发生了巨 大的变化。以C语言为根基的C++、java和C#等面向对象语言相继诞生,并在各自领域大获成 功。今天,C及其后裔几乎统治了计算机程序设计世界。可以这么说,C语言的诞生是现代程序 语言革命的起点,它改变了程序设计语言发展的轨迹,是程序设计语言发展史中的一个里程碑。 然而,C并不仅仅是其他语言的起点和基础,否则它早已成为程序设计语言发展过程中又 一个被遗弃者。和当初发明时一样,C语言今天依然至关重要。它的表达力、效率、简练、紧 凑、对机器的最终控制以及跨平台的高度移植性,使其在系统编程、嵌入式编程等领域一直占 据着统治地位,而C99标准的制订则再一次使C语言焕发出新的活力。下文介绍C程序设计领域 中的几本好书,其中一些堪称经典。
      1. Brian W.Kernighan, Dennis M.Ritchie,《C程序设计语言》 清华影印版、习题集;机械译文版(新版、老版):习题集 这是迄今为止在所有程序设计语言书籍中最广受尊敬的一部经典,是任何一名C程序员的 必读之作。因为出自C语言的设计者 Dennis M.Ritchie 和着名的计算机科学家 Brian W.Kernighan之手,它被昵称为“K&R C”。是它首先引入了“Hello World!”程序,这个程序几乎 成了后来任何一本入门性程序设计语言书籍中的第一个例子。 如同C语言本身简洁紧凑而极具威力一样,这本书轻薄短小而极富张力。通过简洁的描述 和典型的示例,它全面、系统、准确地讲述了C语言的各个特性以及C程序设计的基本方法,内 容涵盖基本概念、类型和表达式、控制流、函数与程序结构、指针与数组、结构、输入与输出、 UNIX系统接口以及标准库等内容。 简洁清晰是这本书最大的特色。这本小书可以教给你许多比它厚几倍的“大部头”的知识。 我认为那些动辄洋洋洒洒拼凑出好几百页乃至上千页的技术作者应该好好向K&R学一学。对于 中、高级程序员而言,如果希望迅速获得C语言的严肃知识而又不愿意多花费哪怕一丁点时间, 这本书就是首选。四书五经:CSDN《程序员》四书五经专栏历年文章汇总 顺便说一句,这本书的索引制作非常出色,极具实用价值,这可能首先要归功于正文部分 的简明扼要。此外,尽管它看上去很像一本教程,但其实更是一本写给专业程序员的指南。如 果你不具备任何其他语言程序设计背景或基本的C语言知识,这本书也许并不适合用作你的C语 言启蒙读物。
      2. Perter Van Der LinDen,《C专家编程》 C专家编程 C语言是严肃的程序员语言,但这并不意味着C语言书籍必须板着面孔说教。在这本被C程 序员昵称为“鱼书”(封面上有一条“丑陋的”腔棘鱼)的着作中,作为SUN公司编译器和操作系统 核心开发组成员之一,Peter淋漓尽致地展示了其深厚的技术沉淀、丰富的项目经验、高超的写 作技巧以及招牌式的幽默。在这部作品中,作者以流畅的文字、诙谐的笔法将逸闻典故、智慧 和幽默自然地融入技术描述中,读来宛若一本小说,极富趣味。 本书讲述了C语言的历史、语言特性、声明、数组、指针、连接、运行时以及内存使用等 知识,揭示了C语言中许多隐晦之处,尤其深入解析了声明、数组和指针、内存使用等方面的 细节。要想成为一名专家级C程序员,这些内容都是必须掌握的。和其他满是抽象例子的C语言 书籍不同,这本书充满了大量的来自真实世界的C程序设计实例,它们对C程序员具有很高的参 照价值。另外,每一章都以极富趣味的“轻松一下”收尾,而附录A“程序员工作面试的秘密”则是 任何语言的程序员在应聘工作前增强自信的好材料。 我怀疑真正的C专家可能用不着看这本书 ——从内容到组织方式到行文风格都决定了这 是一本轻松愉快的“从菜鸟到高手”的进阶读本,所以,它理应拥有更广泛的读者群。初级程序 员往往更需要热情的鼓励,在阅读这本书的过程中,你定会深深地被作者对编程的激情所感染。 世间并无完美。我认为这本书的缺陷在于,和大多数平庸的C语言书籍一样,它画蛇添足 地加入了一章关于C++的描述。在今天看来,这个描述既不全面也有失公允。不过,鉴于作者 是在1994年从一名C程序员的角度去观察C++,这一点也就不足为奇了。
      3. Samuel P. Harbison, Guy L. Steele,《C语言参考手册(第五版)》四书五经:CSDN《程序员》四书五经专栏历年文章汇总 影印版(机械工业出版社)、中文版(机械工业出版社) 在C语言参考手册类书籍里,Samuel P. Harbison 和Guy L. Steele合着的C: AReference Manual是非常出色的一本。这本手册的第五版新增了对C99标准的介绍,以便满足新时期C语 言学习的需要。全书共分为两大部分,第一部分专注于C语言特性,第二部分则全面讨论了C标 准库。本书涵盖C99、C89、传统的C、所有版本的C运行库以及编写与C++兼容的C代码等一 切知识。 这本手册只是中等厚度,但它比“比它更厚”的其他参考手册更清晰地描述了C语言的现在和 过去的方方面面。整本手册技术细节描述精确,组织条理清楚,内容完备详尽而又简明扼要。 可以这么说,它在广度、深度和精度方面都是出类拔萃的。对于中、高级C程序员而言,这本 手册值得常备案头,它几乎肯定要比K&R的着作使用频率更高。
      4. David Hanson,《C语言接口与实现:创建可重用软件的技术》,机械工业出版社 C语言接口与实现:创建可重用软件的技术 C语言能够历经三十多年而不衰,一个重要的原因在于它的适应能力。在这“复用”、“面向 对象”、“组件”、“异常处理”等先进机制漫天飞舞的年代,C语言仍然能够凭借它小而优雅的语言 特性,在相当程度上满足现代软件体系架构提出的要求。只不过,想要达到这个程度,必须要 在C的应用功力上达到最高层次。在嵌入式、系统软件以及对性能要求极高的系统开发中,开 发人员必须达到这样的层次,熟练掌握C语言的高级特性,才能够同时满足效率和灵活性、复 用性的要求。可惜,虽然C语言技术图书汗牛充栋,但是关注这个峰顶之域的作品却是屈指可 数。David Hanson的C Interfaces and Implementations就是个中翘楚。 David Hanson是业内大名鼎鼎的自由编译器lcc的合作者。在这个项目中,他负责提供高度四书五经:CSDN《程序员》四书五经专栏历年文章汇总 可复用的基础架构。在不断的实践中,他完全使用ANSI C形成了一整套可复用组件库。这套组 件库架构清晰,性能优异,而且提供了很多高级的特性,比如类Win32 SEH的异常处理机制、 可移植的线程库、高性能的内存池、丰富的可复用数据结构组件。David Hanson把他在创作这 些组件的过程中所积累的心得以及对其源码的精致剖析原原本本地写在了这本书里。这样的着 作,当然堪称C语言领域里的铭心绝品。难怪已故着名技术作家Richard Stevens对此书赞不绝 口,他说:“这本书中的技术,对于大部分C程序员来说,已经遗忘得太久了。”对于希望能在C 语言应用上达到最高层次的核心程序员而言,这本书是难得的必读之作。
      其他 除了以上四本书以外,我还乐意推荐Andrew Koenig的着作《C陷阱和缺陷》(人民邮电出 版社)和Deitel父子合着的C How to Program两本书。 C陷阱和缺陷 Andrew Koenig是世界上屈指可数的C++专家,他的这本书可能是最薄的一本C语言经典。 它简明扼要地讲述了C程序设计中的陷阱和缺陷,包括词法陷阱、语法陷阱、语义陷阱、连接、 库函数、预处理器以及可移植性缺陷等,最后一章还给出了关于如何减少程序错误的建议以及 前面各章问题的参考答案。尽管这个小册子成书于C89标准制定之前,然而,即使到了C99早 已颁布的今天,书中提到的大多数陷阱和缺陷一如十五年前那样使我们警醒。 C程序设计教程 Deitel父子合着的C How to Program一直是非常好的C语言入门教程,我手头的中译本名为 《C程序设计教程》(机械工业出版社出版,原书第二版)。除了对技术的正规描述(辅以许 多简明扼要的例子)外,每一章后面都带有小结、术语、常见的程序设计错误、良好的程序设四书五经:CSDN《程序员》四书五经专栏历年文章汇总 计习惯、性能忠告、可移植性忠告、软件工程评述、自我测验练习及答案等。整书内容清晰, 组织良好,易于阅读和理解。值得一提的是,有许多入门书读完一遍即可扔掉,而这一本是个 例外。 结语 以上这几本书很大程度上局限于描述C语言及标准库本身,如果希望学习更专业的、领域 相关的C程序设计技术,你可以在选择阅读这几本书的基础上继续查阅专门书籍。此外,在C语 言书籍领域,水平不相上下的作品有很多,这几本只是根据我自身的阅读体验而做出的推荐。 我并不是一名C程序员,我的大多数时间都花在C的后裔语言尤其是C++身上了。然而,正 如你知道的那样,C++并不全是类和模板,不全是面向对象和泛型编程,在较低的层面,C++ 的各个实现一如既往在很大程度上兼容C。C++和C的亲密关系决定了每一本C语言经典都应该 是C++程序员的读物。 这世界变化得真是太快。各色新事物层出不穷,让人眼花缭乱、目不暇接。人们也很容易 被那些五光十色的花哨玩意儿所吸引,常常会忘记构筑过去、现在和未来的坚实基础。C语言 就是这样的基础之一。今天,世界上有许多我们看不见的重要软件是用C语言(以及C++等)编 写而成的,正是它们在默默地支撑着这个信息世界的运转。

      ㈤ 请问学习编程 是先学 c语言还是学 有必要学算法吗

      我认为学习编程是一件好事,不要认为编程很难,其实它并不难,不过之前你得先了解你学习编程的目的是什么?这个很重要,因为目的决定你的发展方向。目前对于编程有很多种编程语言以及相对应的开发软件,根据你的情况选一种语言进行专业学习,不要盲乱学习。编程是一种融汇贯通的东西,学会基础到后边就越来越简单了。而且可以向多种语言发展。因为毕竟世上没有永远不过时的东西嘛!下面说明一些常用的编程语言。
      c语言
      是一种可移植性和多系统平台的编程语言
      java
      是一种功能强大可移植性强的开发语言
      html
      是一种超文本标记语言
      java
      script
      是一种基于客户端的脚本语言
      程序语言,顾名思义就是一种语言,是用于交流的,程序就是计算机的语言和人类语言的翻译者,做一个程序员就是要把人类世界的问题用计算机的方法去解决和展现,可是因为种种原因,大多数人在如何学好语言,如何学好开发平台上疲于奔命,到头来你只会敲写代码。如果想做一个合格的程序员,c++、java、sql、都是一定要学的,另外,不要去学你喜欢的,也不要去费劲脑子想该学什么,看看it界,it市场需要什么,你就学什么。
      新手学编程要从根本出发
      从理论上来说,需要广泛的阅读,了解算法的博大精深和计算机的基本理论。
      从实践上来说,需要有广泛的练习,练习的广泛在于练习不同的内容。
      然后就是创新精神和数学思维能力,这些都是需要培养的。
      基础要打好
      学编程要具备一定的基础,总结之有以下几方面:
      (1)数学基础
      、从计算机发展和应用的历史来看计算机的数学模型和体系结构等都是有数学家提出的,最早的计算机也是为数值计算而设计的。因此,要学好计算机就要有一定的数学基础,出学者有高中水平就差不多了。
      (2)逻辑思维能力的培养
      、学程序设计要有一定的逻辑思维能力,“思维能力”的培养要长时间的实践锻炼。要想成为一名优秀的程序员,最重要的是掌握编程思想。要做到这一点必须在反复的实践、观察、分析、比较、总结中逐渐地积累。因此在学习编程的过程中,我们不必等到什么都完全明白了才去动手实践,只要明白了大概,就要敢于自己动手去体验。谁都有第一次。有些问题只有通过实践后才能明白,也只有实践才能把老师和书上的知识变成自己的,高手都是这样成材的。
      (3)选择一种合适的入门语言、
      面对各种各样的语言,应按什么样的顺序学呢?程序设计工具不外乎如下几类:
      1.本地开发应用软件开发的工具有:visual
      basic
      、delphi
      、vc++
      (
      c++
      builder
      )
      等;数据库开发工具有:visual
      foxpro
      、oracle
      developer
      、power
      builder
      等。
      2.跨平台开发开发工具如
      java
      等。
      3.网络开发对客户端开发工具如:java
      script
      等;对服务器开发工具如:php
      、asp
      、jsp
      、isapi
      、nsapi
      、cgi
      等。以上不同的环境下几种开发工具中
      vb
      法简单并容易理解,界面设计是可设化的,易学、易用。选
      vb
      作为入门的方向对出学者是较为适合的。
      (但现在已经过时)

      热点内容
      行列式存储 发布:2024-10-16 22:07:18 浏览:691
      安卓手机内存不知道用在哪里 发布:2024-10-16 22:00:40 浏览:323
      编程大赛第一名 发布:2024-10-16 21:51:28 浏览:723
      空盘速算法 发布:2024-10-16 21:50:53 浏览:98
      打开小天办公输入服务器IP 发布:2024-10-16 21:35:33 浏览:703
      python开发技术详解pdf 发布:2024-10-16 21:35:30 浏览:449
      云服务器为什么不能全屏 发布:2024-10-16 21:30:27 浏览:272
      有什么软件可以把安卓变红魔 发布:2024-10-16 21:29:32 浏览:124
      phpssh连接 发布:2024-10-16 21:06:12 浏览:762
      系统设备配置图包括哪些图 发布:2024-10-16 21:03:16 浏览:933