小h书网站源码分享

这篇文章给大家聊聊关于小h书网站源码分享,以及对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。

在20世纪90年代便是最重要的编程语言之一,并在21世纪仍保持强劲势头。C++继承了C语言高效、简洁、快速和可移植性的传统。C++面向对象的特性带来了全新的编程方法,这种方法是为应付复杂程度不断提高的现代编程任务而设计的。C++的模板特性提供了另一种全新的编程方法——泛型编程。这三件法宝既是福也是祸,一方面让C++语言功能强大,另一方面则意味着有更多的东西需要学习。

C++融合了3种不同的编程方式:C语言代表的过程性语言、C++在C语言基础上添加的类代表的面向对象语言、C++模板支持的泛型编程。使用C++的原因之一是为了利用其面向对象的特性。要利用这种特性,必须对标准C语言知识有较深入的了解,因为它提供了基本类型、运算符、控制结构和语法规则。所以,如果已经对C有所了解,便可以学习C++了,但这并不仅仅是学习更多的关键字和结构,从C过渡到C++的学习量就像从头学习C语言一样大。另外,如果先掌握了C语言,则在过渡到C++时,必须摒弃一些编程习惯。如果不了解C语言,则学习C++时需要掌握C语言的知识、OOP知识以及泛型编程知识,但无需摒弃任何编程习惯。如果您认为学习C++可能需要扩展思维,这就对了。

如果你想学习C++,选择C++PrimerPlus第6版中文版准没错。

C++PrimerPlus第6版中文版在今年重新再版。

划重点:

C++教程十年新版再现,经久不衰的C++畅销经典教程,中文版累计销量超500000册,2020版赠送价值99元e读版电子书及在线实验环境,附赠大尺寸(60CM*80CM)全书学习思维导图。

全新升级,针对C++11标准全面更新;专为零基础读者撰写,近百万程序员的C++编程启蒙教程;示意图解释概念,方面理解;随时指出潜存的问题,避免走弯路;随处可见的警告、注意、提示随时给读者以警醒;庖丁解牛式分析程序,确保知其然更知其所以然;精心设计复习题、编程练习,检验学习中的问题,提示就业面试笔试的要点;登陆异步社区,免费获得本书配套源代码等资源。

这本书在豆瓣:

pgc-card.pgc-card-href:hover{text-decoration:none;}/*pc样式*/.pgc-card{box-sizing:border-box;height:164px;border:1pxsolide8e8e8;height:120px;position:absolute;right:76px;top:20px;}.pgc-cover{position:absolute;width:162px;height:162px;top:0;left:0;background-size:cover;}.pgc-content{overflow:hidden;position:relative;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);}.pgc-content-title{font-size:18px;color:444;overflow:hidden;text-overflow:ellipsis;padding-top:9px;overflow:hidden;line-height:1.2em;display:-webkit-inline-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;}.pgc-content-price{font-size:22px;color:406599;font-size:14px;text-align:center;}.pgc-buy-text{padding-top:10px;}.pgc-icon-buy{height:23px;width:20px;display:inline-block;background:url(https://lf6-cdn-tos.bytescm.com/obj/cdn-static-resource/pgc/v2/pgc_tpl/static/image/commodity_buy_f2b4d1a.png);}C++PrimerPlus第6版中文版¥98.83购买

豆瓣评分8.6,下图是来自豆瓣的一段中肯建议:

本书遵循的C++标准

当代的编译器都对C++98提供了很好的支持。编写本书期间,有些编译器还支持一些C++11特性;随着新标准获批,对这些特性的支持将很快得到提高。本书反映了当前的情形,详尽地介绍了C++98,并涵盖了C++11新增的一些特性。在探讨相关的C++98主题时顺便介绍了一些C++新特性,而第18章专门介绍新特性,它总结了本书前面提到的一些特性,并介绍了其他特性。

在编写本书期间,对C++11的支持还不全面,因此难以全面介绍C++11新增的所有特性。考虑到篇幅限制,即使这个新标准获得了全面支持,也无法在一本书中全面介绍它。本书重点介绍大多数编译器都支持的特性,并简要地总结其他特性。

本文重点C++PrimerPlus第6版中文版习题解答来啦!

pgc-card.pgc-card-href:hover{text-decoration:none;}/*pc样式*/.pgc-card{box-sizing:border-box;height:164px;border:1pxsolide8e8e8;height:120px;position:absolute;right:76px;top:20px;}.pgc-cover{position:absolute;width:162px;height:162px;top:0;left:0;background-size:cover;}.pgc-content{overflow:hidden;position:relative;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);}.pgc-content-title{font-size:18px;color:444;overflow:hidden;text-overflow:ellipsis;padding-top:9px;overflow:hidden;line-height:1.2em;display:-webkit-inline-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;}.pgc-content-price{font-size:22px;color:406599;font-size:14px;text-align:center;}.pgc-buy-text{padding-top:10px;}.pgc-icon-buy{height:23px;width:20px;display:inline-block;background:url(https://lf6-cdn-tos.bytescm.com/obj/cdn-static-resource/pgc/v2/pgc_tpl/static/image/commodity_buy_f2b4d1a.png);}C++PrimerPlus第6版中文版习题解答¥88.1购买

《C++PrimerPlus(第6版)中文版习题解答》是超级畅销书《C++PrimerPlus(第6版)中文版》的配套习题答案,针对书中的复习题和编程练习,给出了解题思路和答案。《C++PrimerPlus(第6版)中文版习题解答》共分为18章,每一章的主题与《C++PrimerPlus(第6版)中文版》完全一致。每章开篇采用思维导图的方式列出本章的知识点,然后对每章的重点内容进行了梳理总结,最后则对每章中的复习题和编程练习进行了分析并给出了解答思路,确保读者在彻底夯实理论知识的同时,进一步提升实际编程能力。作为《C++PrimerPlus(第6版)中文版》的配套参考书,《C++PrimerPlus(第6版)中文版习题解答》特别适合需要系统学习C++语言的初学者阅读,也适合打算巩固C++语言知识或者希望进一步提高编程技术的程序员阅读。

关于作者:StephenPrata曾在加利福尼亚的马林学院(肯特菲尔德)教授天文学、物理学和程序设计课程,现已退休。他在加州理工学院获得学士学位,在加州大学伯克利分校获得博士学位。他最早接触程序设计,是为了利用计算机给星团建模。Stephen撰写和与他人合著了十几本书籍,其中包括CPrimerPlus和UnixPrimerPlus。

截选本书第2章部分内容

开始学习C++

本章内容包括:

创建C++程序;C++程序的一般格式;include<iostream>//aPREPROCESSORdirective\nintmain()//functionheader\n{//startoffunctionbody\nusingnamespacestd;//makedefinitionsvisible\ncout<<&34;;//message\ncout<<endl;//startanewline\ncout<<&34;<<endl;//moreoutput\nreturn0;//terminatemain()\n}

程序调整

要在自己的系统上运行本书的示例,可能需要对其进行修改。有些窗口环境在独立的窗口中运行程序,并在程序运行完毕后自动关闭该窗口。正如第1章讨论的,要让窗口一直打开,直到您按任何键,可在return语句前添加如下语句:

cin.get();

对于有些程序,要让窗口一直打开,直到您按任何键,必须添加两条这样的语句。第4章将更详细地介绍cin.get()。

如果您使用的系统很旧,它可能不支持C++98新增的特性。

有些程序要求编译器对C++11标准提供一定的支持。对于这样的程序,将明确的指出这一点,并在可能的情况下提供非C++11代码。

将该程序复制到您选择的编辑器中(或使用本书配套网站的源代码,详情请参阅封底)后,便可以C++编译器创建可执行代码了(参见第1章的介绍)。下面是运行编译后的程序时得到的输出:

ComeupandC++mesometime.\nYouwon’tregretit!

C语言输入和输出

如果已经使用过C语言进行编程,则看到cout函数(而不是printf()函数)时可能会小吃一惊。事实上,C++能够使用printf()、scanf()和其他所有标准C输入和输出函数,只需要包含常规C语言的stdio.h文件。不过本书介绍的是C++,所以将使用C++的输入工具,它们在C版本的基础上作了很多改进。

您使用函数来创建C++程序。通常,先将程序组织为主要任务,然后设计独立的函数来处理这些任务。程序清单2.1中的示例非常简单,只包含一个名为main()的函数。myfirst.cpp示例包含下述元素。

注释,由前缀//标识。预处理器编译指令include<iostream>\nintmain()\n{\nusingnamespacestd;\ncout<<&34;;\ncout<<endl;\ncout<<&34;<<endl;\nreturn0;\n}

C++注释以//打头,到行尾结束。注释可以位于单独的一行上,也可以和代码位于同一行。请注意程序清单2.1的第一行:

//myfirst.cpp–displaysamessage

本书所有的程序都以注释开始,这些注释指出了源代码的文件名并简要地总结了该程序。在第1章中介绍过,源代码的文件扩展名取决于所用的C++系统。在其他系统中,文件名可能为myfirst.C或myfirst.cxx。

提示:

应使用注释来说明程序。程序越复杂,注释的价值越大。注释不仅有助于他人理解这些代码,也有助于程序员自己理解代码,特别是隔了一段时间没有接触该程序的情况下。

C-风格注释

C++也能够识别C注释,C注释包括在符号/和/之间:

include<iostream>\nusingnamespacestd;

可使用其他代码替换第2行,这里使用这行代码旨在简化该程序(如果编译器不接受这几行代码,则说明它没有遵守标准C++98,使用它来编译本书的示例时,将出现众多其他的问题)。为使程序正常工作,只需要知道这些。下面更深入地介绍一下这些内容。

C++和C一样,也使用一个预处理器,该程序在进行主编译之前对源文件进行处理(第1章介绍过,有些C++实现使用翻译器程序将C++程序转换为C程序。虽然翻译器也是一种预处理器,但这里不讨论这种预处理器,而只讨论这样的预处理器,即它处理名称以include编译指令:

include编译指令导致iostream文件的内容随源代码文件的内容一起被发送给编译器。实际上,iostream文件的内容将取代程序中的代码行34;godancing?&34;afishnamedDesire&34;ComeupandC++mesometime.&34;ComeupandC++mesometime.&34;ComeupandC++mesometime.&34;TheGood,the&34;Bad,&34;andtheUkulele&34;What’snext?\\n&34;Plutoisadwarfplanet.\\n&34;Plutoisadwarfplanet.&34;\\n&include<iostream>\nint\nmain\n(){using\nnamespace\nstd;cout\n<<\n&34;\n;cout<<\nendl;cout<<\n&34;<<\nendl;return0;}

这样虽然不太好看,但仍然是合法的代码。必须遵守一些规则,具体地说,在C和C++中,不能把空格、制表符或回车放在元素(比如名称)中间,也不能把回车放在字符串中间。下面是一个不能这样做的例子:

intmain()//INVALID–spaceinname\nre\nturn0;//INVALID–carriagereturninword\ncout<<&34;;//INVALID–carriagereturninstring

然而,C++11新增的原始(raw)字符串可包含回车,这将在第4章简要地讨论。

1.源代码中的标记和空白

一行代码中不可分割的元素叫作标记(token,参见图2.3)。通常,必须用空格、制表符或回车将两个标记分开,空格、制表符和回车统称为空白(whitespace)。有些字符(如括号和逗号)是不需要用空白分开的标记。下面的一些示例说明了什么情况下可以使用空白,什么情况下可以省略:

return0;//INVALID,mustbereturn0;\nreturn(0);//VALID,whitespaceomitted\nreturn(0);//VALID,whitespaceused\nintmain();//INVALID,whitespaceomitted\nintmain()//VALID,whitespaceomittedin()\nintmain()//ALSOVALID,whitespaceusedin()

图2.3标记和空白

2.C++源代码风格

虽然C++在格式方面赋予了您很大的自由,但如果遵循合理的风格,程序将更便于阅读。有效但难看的代码不会令人满意。多数程序员都使用程序清单2.1所示的风格,它遵循了下述规则。

每条语句占一行。每个函数都有一个开始花括号和一个结束花括号,这两个花括号各占一行。函数中的语句都相对于花括号进行缩进。与函数名称相关的圆括号周围没有空白。

前三条规则旨在确保代码清晰易读;第四条规则帮助区分函数和一些也使用圆括号的C++内置结构(如循环)。在涉及其他指导原则时,本书将提醒读者。

2.2C++语句

C++程序是一组函数,而每个函数又是一组语句。C++有好几种语句,下面介绍其中的一些。程序清单2.2提供了两种新的语句。声明语句创建变量,赋值语句给该变量提供一个值。另外,该程序还演示了cout的新功能。

程序清单2.2carrots.cpp

//carrots.cpp–foodprocessingprogram\n//usesanddisplaysavariable\n\n34;Ihave&34;carrots.&34;Crunch,crunch.NowIhave&34;carrots.&34;Printingastring:%s\\n&34;25&34;Printinganinteger:%d\\n”,25);

撇开printf()的复杂性不说,必须用特殊代码(%s和%d)来指出是要打印字符串还是整数。如果让printf()打印字符串,但又错误地提供了一个整数,由于printf()不够精密,因此根本发现不了错误。它将继续处理,显示一堆乱码。

cout的智能行为源自C++的面向对象特性。实际上,C++插入运算符(<<)将根据其后的数据类型相应地调整其行为,这是一个运算符重载的例子。在后面的章节中学习函数重载和运算符重载时,将知道如何实现这种智能设计。

关于小h书网站源码分享到此分享完毕,希望能帮助到您。

Published by

风君子

独自遨游何稽首 揭天掀地慰生平