C程序员从校园到职场.docx
《C程序员从校园到职场.docx》由会员分享,可在线阅读,更多相关《C程序员从校园到职场.docx(135页珍藏版)》请在课桌文档上搜索。
1、C程序员从校园到职场L第1章概述2第2章学校到职场3第3章程序的样式4第4章变量和函数5第5章内存操作6第6章文件7第7章指针和结构体8第8章算法和协议9第9章程序重构D第10章S。L语句和Shen命令IL第11章程序问题排查2附录A同行评审第1章概述本章介绍C语言的发展历史和主要特点,以及实际项目工作中软件开发工程师常用到的工具软件。1.1 C语言的发展历史1.1.1 C语言之父C语言是1972年由美国贝尔实验室的计算机科学家DenniSRitChie(丹尼斯里奇)设计发明的。因此,De吧isRitchie被誉为“C语言之父”(他已于2011年10月9日去世,享年70岁)。图1.1所示的人物
2、就是DenniSRitChie。Dennis Ritchie1941-2011图1.1“C语言之父DenniSRitchieDenniSRitehie曾在哈佛大学学习物理学和应用数学,1967年进入贝尔实验室工作。作为计算机科学家,在他身上有很多可贵的、值得我们学习的品格,例如:第一,他对所做的事十分有兴趣;第二,跳出舒适区工作,不断挑战自己;第三,有创新思维,不拘泥于条条框框;第四,喜欢分享,不臧匿自己的核心技术。DenniSRitChie对计算机科学的贡献主要有以下几个方面:第一,作为“C语言之父”,他最大的贡献当然是发明了C语言;第二,1973年他与KenThOmPSon合作,把UNlX
3、90%以上的内容用C语言改写,因此也被誉为“UNIX之父”;第三,1978年他与BrianW.Kemighan一起出版了名著7CPegwwiMgLmgvage(C程序设计语言),此书已被翻译成多种语言,成为C语言方面最权威的教材之一。基于DermiSRitChie的杰出成就,1983年他与KenThomPSOn一起获得了图灵奖。1999年,DennisRitChie和KenThomPSon因为在发展C语言和UNlX操作系统方面所做出的贡献一起荣获了美国国家技术奖章。1.1.2 C语言的演进作为在国际上广泛使用的计算机编程语言,C语言的发展简史如图1.2所示。C语言到底有多少人在用?C语言的受欢
4、迎程度如何?如图1.3所示为CodeForge网站公布的2014年11月“我最喜爱的编程语言“排行榜。这个排行榜来自2014年11月对56000多名软件工程师的问卷调查。该排行榜非常清楚地反映了在世界不同国家和地区各种编程语言的流行程度,可供软件工程师及IT相关行业人士参考。从图1.3可以看出,在全球范围内,C语言的受欢迎程度位居排行榜的榜首。因此,C语言使用得非常广泛。1816141210864202014年11月-全球BnIIc-16.7%IIMatIab-14.6%Java-12.2%IIC#-10.1%Mvb-5.2%PHP-4.6%MVB.NET-2.8%Delphi-2.8%BAs
5、sembIy-2.5%Python-2.4%HJavascript-1.3%Objective-C-1.2%IHiFortran-1.1%IIPascal0.9%图1.32014年U月“我最喜爱的编程语言”排行榜1.2 C语言的主要特点C语言是一种功能强大的、被广泛应用的面向过程的编程语言,可用于编写系统软件和应用软件。C语言的主要特点如图1.4所示。如图1.4所示,C语言的诸多特点使其越来越受到广大软件开发人员的青睐,也使其成为了使用人数最多的计算机编程语言之一。学习好C语言,对于深入学习计算机科学的其他课程都是很有好处的。图1.4C语言的主要特点1.3 常用工具软件有一次,我打开电视机准备
6、随便看看,无意中被一部战争片吸引住了。成千上万的战士搭起云梯,想攻破一座城池。但是城楼上面的敌人负隅顽抗,拼了命地阻击进攻。双方的伤亡都很惨重,但城就是攻不下来。眼看剩下的人不多了,突然不知从什么地方开出一辆坦克,两炮就把城门轰开了。战士们趁势攻入城中,将敌人全部歼灭了。这类电视剧比较常见,相信大家看了不止一次。但是,我看完之后,那个场景还一直留在我的脑海里。成千上万的人不如一辆坦克来得直接,说明了什么问题呢?我立马想到了一句俗语:工欲善其事,必先利其器。的确,工具对于软件开发工程师来说,真的是很重要。好的工具能够提高开发的效率,进而缩短产品的研发周期。那么,在实际的软件研发项目中,软件开发工
7、程师常用的工具软件有哪些呢?1.3.1 MicrosoftVisualStudioZMicrosoftVisualC+6.0MicrosoftVisualStudio(VS)是美国微软公司的开发工具包系列产品。它是一个较为完整的开发工具集,包括了整个软件生命周期中所需要的大部分工具,如集成开发环境(IDE)等。MicrosoftVisualC+6.0(VC或者VC6.0),是微软推出的一款C+编译器,将“高级语言”(如C、C+等)翻译为“机器语言”的程序。它是一个功能强大的可视化软件开发工具,已成为大多数专业程序员进行软件开发的首选工具之一。现在的最新版C+编译器集成在MicrosoftVis
8、ualStudio2015软件里面。用MiCroSoflViSUaIC+6.0软件打开的代码如图1.5所示。图1.5用MiCrOSOftVisualC+6.0软件打开的代码鉴于使用MiCroSOftViSUalStudioZMicrosoftVisualC+6.0进行软件开发的人员很多,有热心人士为其开发了一款叫做ViSUaIAssistX的插件。VisualAssistX是一款非常好的MiCroSoftViSUaISlUdio/MicrosoftVisualC+6.0插件,支持C、C+JaVa等语言,能够自动识别各种关键字、系统函数、成员变量,同时能够自动给出输入提示、标示错误、更正大小写错
9、误等,有助于提高开发效率。1.3.2 SourceInsightSourceInSight是一个面向项目开发的程序编辑器和代码浏览器,它拥有内置的对C、C+JaVa等程序的分析。它能够分析你的源代码,并自动为你显示有用的上下文信息。SoUrCelnSight不仅是一个强大的程序编辑器,还提供了最快速的对源代码的导航信息。该工具被视为如今最好用的语言编辑器之一。用SoUrCeInSight软件打开的代码如图1.6所示。AEsaBplcProjectSourceInrichtIBiaBplr.clfLo11FXK tl RH XSh DtfHQGExamptex心 r*slui ats.h * I
10、T32JrrX“八C3-JZTHHBHH3U lrcttPcer i 1Crjt QiM i ln& x e q M .* n*功能描述;*输入参数:*娴出蓼数:*返回值:其它说明:修改日期力 JmV iqa- s r me修改内容* 20130712VI.0周兆熊创建void main (fResult = ProcessFaIrtorial (IlnputValue);/ 调用求阶乘的函数printf(M%di-%10.0fnMr ilnputvaluer fResult);INT32 IInputValue = 0;float fResult 00;printf(*tinput an i
11、nteger number: scant (,%d iilnputvaiue);PrCeSSFjKtOfiEmcorneancc*w*wt)tloctulc-0.0;/MMfilcVlu0)(PtiBftteIlnpwtValKMrAM11-IjIlaWQcn农田d?图1.6用SOUrCeInSight软件打开的代码1.3.3 Notepad+NotePad+是一款很有特色的WindOWS环境下免费开源的代码编辑器。除了可以用来制作一般的纯文字说明文件之外,也十分适合用作代码程序的编辑器。NotePad+极具特色的一个功能就是语法的高亮度显示,方便了对关键词语的阅读。它支持的语言包括C、C+、
12、JaVa等。用NotePad+软件打开的代码如图1.7所示Q;iy DCCgeE s式的文ftltWl用意及代吗第79F*Bpleg*aBplccotepad数信阴W一12 rr3Q :07K入出国它改一13 动返其修一20术一个技的阳幕iJnptVame-(无求防渠府的结果无版本号修改人修改内容VI.0用兆罐创建floatProc*sFactor11(XNT32iZnputValM)B(-9tlCfR*ulC-;S/先一断人也鼻舌小于。if(XlnputVale)S(printf,I:nt:upvalueO,dat*errc:,)rtur-1;6)la,I;XnputVlu)。和l的期我是1
13、一CResuit1elseTiResult-ProceasFaccoirlAKIXnputVAlue-.iXnpucValue:/执行递白ill用rturn(fResult;C5-hlIzh2XBhr”61L0SB3“t八m,E31IiC图1.7用NOtePad+软件打开的代码1.3.4AraxisMerge/BeyondCompare1. AraxisMerge当程序代码比较多(成千上万行)的时候,我们想要了解最新代码与之前某个时期的代码的不同之处,并不是一件容易的事情。这样,代码比较工具就应运而生了。AraxisMerge和BeyondCOmPare是两款用得较多的代码比较工具。AraXi
14、SMerge是一个可视化的文件比较、合并和同步的软件,能够方便地被软件工程师用于快速精确地比较不同版本的源文件。此外,它还能被用于进行版本和质量控制。用AraXiSMerge软件进行代码比较如图1.8所示。2. BeyondCompareBeyondCOmPare是一套由SCooterSOftWare推出的软件,主要用于文件之间的比较。对于软件开发工程师来说,它可以用来发现不同版本代码或文档的不同,使用起来非常方便。tfvAra三iffIerceP;aBplcEule.c&nd0sEaBplcl8aapl(.cEJVjREllt (4K *e Inw S I? 3J3J 31(m tfl Q
15、;3* *- 3 V -sll22 float Pr*c*Vaorl32 1Xk*4kVaIu); Z326 SRt,魅:XdaZC 人敏.歪t? 雅N敏无26 0 0712VI . 099 34 V41d M3n4uK - 0.0;30PrIaCdnPVt an aeegr29ont40改为由e.M/ B明次阶孰r?说SBxmq11Exm1 cfXoc rooFccoril l32 llnnftVlu.5门格0 0 人S愉出 C5 *1R它儡明 WAOffi 20130712上克无无无Vi.0OBJbflr之四由e40珀而停燃” 帕人“敏 o 融: ii m. Xt0i:S3 改日朝京一个做
16、aiTnjtVAlu49acor&alXVT32 Xx*Vvod Bm,ZKT3: 1ZixocsF*crl (1Xmmk7a1u);幼蛇传T惊人,敢 惴出依 e roeFactoriallIVT32 *IBtmWFrtYlrblpBi(bl*lekiftlrAldarcc*artnvfaraenEmm图1.8用AraXiSMerge软件进行代码比较用BeyondCOmPare软件进行代码比较如图1.9所示。图1.9用BeyondCOmPare软件进行代码比较1.3.5 Evernote(印象笔记)Evemote(印象笔记)是2012年5月10日由EVeITIote公司推出的一款产品,具有储存
17、重要资料、剪辑网页、图片搜索等功能。对于软件开发工程师来说,EVernoIe可用于记录阅读过的重要技术书籍的笔记、在工作过程中的一些想法,以及软件实践或论文等。EVemOte软件的界面如图1.10所示。图1.10EVemote软件的界面1.3.6 FTP工具(如FileZina等)在工作过程中,我们会不时地需要用FTP工具来上传或下载一些东西。FiIeZilIa是软件开发工程师用得较多的FTP工具之一。FiIeZiHa是一款免费的、开源的FTP软件,分为客户端版本和服务器版本两种。它具备所有的FTP软件功能,使用起来非常方便、快捷,曾在2002年11月获选为当月最佳推荐专案。FiIeZiIla
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序员 校园 到职

链接地址:https://www.desk33.com/p-900948.html