这个问题应该是怎么学习C语言的问题
会用C/C++语言(两者不能拆开,要是找工作说你就会C不会C++会被笑话的)。
看完C++primer后面就可以先放下理论的知识了(当然以后还是要看C++编程思想,C++专家编程,不过这些可以工作几年后把)。然后双管其下,MFC+WINDOWs编程。两个一起看。一个是软件应用,一个是编写WINDOWS软件所要学习的!!!
Windows编程类
Windows 程序设计第5版上、下册
原书名: Programming Windows (Fifth Edition)
原出版社:Microsoft Press
作者:(美)Charles Petzold
译者:北京博彦科技发展有限责任公司
出版社:北京大学出版社
出版日期:2001-03
页码:1376
定价:160:00RMB
此书被认为是Windows编程最好的导论性读本。在1994年5月,此书的作者Charles Petzold被《Window Magazine》和Microsoft公司授予”Windows Pioneer”奖,以表彰他对Microsoft Windows的成功作出的贡献,可见该书的权威性,以至于“如果对Windows开发有什么问题的话,请翻阅PetZold的著作吧”几乎成了一句至理名言。
本书覆盖了WINDOWS编程的方方面面,将windows编程的每一个元素(如输入,输出及对话框,图形,多媒体,线程,文档与视图,Internet等等)讲解得很清晰、简明,采用的大多是具有代表性的示例,代码风格好并且很有实用价值。笔者认为这本书是学习WINDOWS编程的经典入门好书,每一次的细心阅读都会对WINDOWS编程有更深刻的理解, 不过笔者认为书中讲的内容都较为基础,更深层的东西可以去看《WINDOWS核心编程》。
笔者建议有条件的读者,最好阅读英文原版。
Windows核心编程 原书名: Programming Applications for Microsoft Windows Fourth Editio
原出版社:Microsoft Press
作者:(美)Jeffrey Richter
译者:王建华等
出版社:机械工业出版社
出版日期:2000-05
页码:689
定价:86:00RMB
Jeffrey Richter 是 Windows System 程序设计的头头,他的每一本书都对 Windows 核心有很精彩的剖析,笔者从《Windows 95 程式设计指南》,《Windows高级编程指南》,《Windows核心编程》到《Applied Microsoft .NET Framework Programming(影印版)》一直阅读他写的书,可以说本本经典,阿蒙是他的崇拜者,死心踏地地追随Jeffrey Richter。
本书是讲解Windows 操作系统内部机制的专著,作者从基本概念入手,全面系统地介绍了Windows的各种基本构件,如进程、线程、DLL和内存管理等,并列举了大量应用程序,精辟地分析了构件的使用方法,为掌握Windows 编程技巧提供了一条有效的捷径。笔者写过两年的windows驱动程序, 本书的内存管理章节给我提供了很大的帮助,可见本书对内存管理讲得非常地透彻。另外本书对进程和线程的讲解也十分地经典,先说明其来龙去脉,然后描述其中的工作机制,并详细说明windows提供了哪些API函数来进行多进程与多线程的程序设计,如果能结合侯捷老师的《Win32多线程程序设计》一起研究的话,那你对进程与线程的理解将更有深度。
Win32 多线程程序设计
作者:侯俊杰(侯捷)
出版社:华中科技大学出版社
出版日期:2002-01
页码:480
定价:59 .80RMB
使用线程,你可以产生高效率的服务器,建立Internet服务器扩充软件,获得多CPU系统的好处,建立精巧的COM/OLE对象,并改善程序的反应度。
本书的第一篇“上路吧,线程”,为你建立必要的基础,包括线程的启动和结束、核心对象、激发和未激发状态的意义、同步机制及其用途。第二篇“多线程程序设计的工具与策略”,介绍C runtime函数库和MFC对线程的支持、如何在USER和GDI的限制之下施行多线程、如何产生一个DLL、如何对多线程程序调试。第三篇“真实世界中的多线程应用程序”,谈论如何组织一个程序,使它有效支持多线程。本篇示范两个真实世界中的应用软件,第一个是个freethreaded OLE automation server,第二个是 ISAPI程序,是个IIS(Internet Information Server)扩充软件,示范如何和JET数据库交谈。
本书从理论到实际应用讲得很全面及易懂,范例程序也很丰富并且具体生动,而且书里不时地在一些需要注意的地方给出一些总结性的建议,这不仅让读者倍感亲切,而且也加深了对所学内容的理解。
MFC编程类
MFC Windows程序设计(第2版)
原书名: Programming Windows with MFC Second Edition
原出版社:Microsoft Press
作者:(美)Jeff Prosise
译者:北京博彦科技发展有限公司
出版社:清华大学出版社
出版日期:2001-09
页码:1166
定价:128:00RMB
本书不仅扩展了已被认为是权威的关于Microsoft 用于windows API的功能强大的C++类库的阐述,还新增了有关COM,OLE和ActiveX等内容。本书的作者,Jeff Prosise,用其无与伦比的技巧向读者讲述了MFC程序设计中的基本概念和主要技术-再次阐释了在32位windows平台上进行快速的面向对象开发的完美方法。
笔者认为本书讲解细致而且全面,比较适合初学者,
深入浅出MFC(第二版)
作者:侯俊杰(侯捷)
出版社:华中科技大学出版社
出版日期:2001-01
页码:736
定价:80:00RMB
有关这本书及其作者,不用我多说,大家已非常清楚,网上也是众说纷坛。
本书分为四大篇。第一篇讲SDK编程,简单明了的概括了SDK程序设计的主要原理,提供进入MFC核心技术以及应用技术之前的所有技术基础,特别是Windows的消息机制,讲得很清楚。第二篇介绍Visual C++整合环境开发工具,对整个软体开发环境有全盘以及概观性的介绍,可以让初学者迅速了解手上掌握的工具,以及它们的主要功能。第三篇介绍application framework的观念,以及MFC骨干程序,所谓骨干程序,是指Visual C++的工具AppWizard所产生出来的程序码。根据我的了解,太多人使用 MFC 是编写程序只是知其然而不知其所以然,本篇详细解释 MFC 程式之来龙去脉,为初入 MFC 领域的读者奠定扎实的基础。第四篇以微软公司附于Visual C++光碟片上的一个范例程序Scribble为主轴,一步一步加上新的功能。并在其间深入介绍Runtime Type Information(RTTI)、Dynamic Creation、Persistence(Serialization)、Message Mapping、Command Routing等核心技术。这些技术正是其他书籍最缺乏的部分。
“初学者只需掌握它的精髓,而不需深究它的全部内容,否则很有可能你会看不懂,等你在不断学习过程中,返过来重复学习,你将会发现此书的奥秘所在”。
COM编程类
COM原理与应用
作者:潘爱民
出版社:清华大学出版社
出版日期:2001-03
页码:472
定价:39:00RMB
本书不仅介绍了COM的基本原理及其扩展知识,还讲述了MTS及COM+的一些知识。全书分为三部分,第一部分为COM基础,作者在写这部分内容时,参阅了“Inside COM”一书,但对内容结构进行了重新调整,并增加了一些关于WINDOWS程序设计和MFC方面的知识;第二部分为COM扩展,第三部分为COM应用与发展,介绍了组件化程序设计思想以及多层软件结构模型。读者在学习了COM的基本原理之后,结合MTS和COM+所倡导的一些概念,就可以从更高的层次来理解和使用COM及COM+了。
对于COM初学者来说这是一本经典的书, 它由浅到深的论述使你对COM的概念及框架有较深的理解。
COM本质论
原书名:Essential COM
作者:(美)Box,D.
译者:潘爱民
出版社:中国电力出版社
出版日期:2001-08
页码:358
定价:49:00RMB
本书由具有鬼才之称的Don Box撰写,在计算机界,“没有人能把COM阐释得比Don Box更清楚”。
本书无疑是COM领域中最负有盛名的一本书。在亚马逊的排行榜上曾盘踞数月之久,很多专家给其以极高的评价。读完这本书之后,COM对于您会“变得再明白不过了”(这是“Inside OLE”的作者Kraig Brockschmidt和本书的作者DonBox在顿悟了COM和OLE之后的境界)。期望您会有这样的感受。
本书揭示了COM(组件对象模型)的本质,旨在帮助开发人员真正理解COM的为什么,而不仅限于怎么使用。书中还提供了一个完整的分布式COM应用,演示了各种编程技术。此外,本书还涉及到许多COM高级特性,例如线程模型(或者套间模型)、名字对象、连接点等,因此,要想从本书获得最大受益,您也需要有COM的知识作基础,建议读者先阅读《COM原理与应用》之后再阅读本书。
“ 这不是一本供新手学习的书,也不是一本教您如何开发COM组件的书,而是一本在一定的基础上继续提高对COM的理解的书。如果用它来学习COM,您可能会失望,因为许多内容需要有一定的经验基础才能看得明白;但是如果用它来加深自己对COM的理解,那么这本书再合适不过了。”
差书点评
《MFC开发人员参考手册 》
本书是一本详细介绍MFC类库的工具书,它对MFC类库4.2版本中所有的类及其成员都做了比较详细的说明.笔者认为MSDN就是最好的工具,没有必要花这个冤枉钱.
学习心得
看了不少的书,也写了不少的代码,简单总结一下我的学习方法,笔者是按以下的顺序来学习的:C/C++ ――> SDK ――> MFC ――>COM/DCOM/ATL/COM+,当然这个顺序的前提是你已经具备了一定的数学,数据结构及算法,操作系统等基础知识,学好C++是很关键的,尤其要理解清楚OOP思想,养成以面向对象方法去思考问题解决问题的习惯;学习SDK的目的主要是理解Windows OS的内部机制比如内存管理,多任务及多线程等,特别要透彻地理解Windows的消息机制;有了前面的知识,学起MFC就容易了,有些网友经常与我聊,说他看了一年多的书,也写一些程序,但对MFC还是一头雾水,我想主要的原因还是学习不够系统性,很多知识及经验是循序渐进的,千万不要幻想一步登天,要有持之以恒的学习及实践精神。
C作为一种低级语言当然不可能直接给你处理图形的API咯
你想处理图像 可以学学C++方面的图形学 其实C也可以做 只是C里面没有提供那么多库 而VC++编译环境中已经给你了windows下所用的库 C其实什么都能做 只是C比较底层 做什么都烦 你要从原理级开始
你要处理图片 你先要知道 图片在计算机中如何储存 图片运算(比如阀值计算,灰度,亮度计算)之类的 你也要知道如何压缩图片 反正用C来写程序的话 你必须摒弃什么都给你提供API让你直接用的想法
C中什么都没有 什么都要你自己来完成
另外如果不用人家的API直接用C估计是显示不出图片的 因为显示方面 应该和系统还有硬件底层有关 屏幕像素点亮 应该涉及机器编程方面
这些东西 你只能用人家提供给你的API了 这些API应该是直接和硬件交流的
不过现在一般很少有人用C再来写这些东西了
现在如果你要做一个游戏
你可以用C++和Dx来做
这都不会,笨死了~
什么意思?说明白点啊!