百度资料c++primerplus第六版学习笔记 0111 2210+.docx
- 文档编号:3602581
- 上传时间:2022-11-24
- 格式:DOCX
- 页数:101
- 大小:4.82MB
百度资料c++primerplus第六版学习笔记 0111 2210+.docx
《百度资料c++primerplus第六版学习笔记 0111 2210+.docx》由会员分享,可在线阅读,更多相关《百度资料c++primerplus第六版学习笔记 0111 2210+.docx(101页珍藏版)》请在冰豆网上搜索。
XX资料c++primerplus第六版学习笔记01112210+
笔记目录
第一章:
预备知识5
1、c++简介5
2、程序创建技巧5
3、源文件扩展名5
第二章:
开始学习c++5
1、c++代码区分大小写。
5
2、c++代码结构5
3、函数6
4、注译6
5、c++预处理器和iostream文件6
6、头文件名6
7、名称空间7
8、cout进行c++输出7
9、控制符endl7
10、c++代码格式7
C++语句7
1、声明语句和变量7
2、赋值语句7
3、cout的新用法8
4、使用cin8
5、使用cout拼接8
6、类简介8
7、函数8
8、函数原型9
9、使用库函数10
10、函数变体10
12、函数格式11
13、函数头11
14、复习intmain()函数头12
15、关键字12
16、用户定义有返回值的函数13
17、多函数程序中使用using指令14
总结14
复习题14
编程练习15
第三章、处理数据17
1、简单变量17
2、变量名18
3、整型18
4、整型short、int、long和longlong18
※注译:
位与字节18
要了解的概念:
19
5、运算符sizeof和头文件limits20
符号常量-预处理器方式(注译)21
6、初始化21
c++初始化方式21
7、无符号类型22
8、选择整数类型23
9、整型字面值24
10、C++如何确定常量的类型25
11、char类型:
字符和小整数26
成员函数cout.put()27
Char字面值and转义序列27
通用字符名28
signedchar和unsignedchar29
wcha_t29
C++11新增的类型:
char16_t和char32_t29
Bool类型30
12、const限定符(定义符号常量)30
13、浮点数30
书写浮点数31
浮点类型31
浮点常量32
浮点数的优缺点33
将类型分类*注译33
13、c++算术符33
运算符优先级和结合性34
除法分支34
运算符重载(注译)34
求模运算符35
类型转换36
14、总结38
15、第三章复习题39
16、编程练习40
第四章、复合类型40
1、数组40
3、数组的初始化规则42
4、c++数组初始化方法42
5、字符串43
拼接字符串常量43
在数组中使用字符串43
字符串输入45
每次读取一行字符串输入46
混合输入字符串和数字47
6、string类简介48
C++11字符串初始化49
赋值、拼接和附加49
String类的其他操作(包含了确定字符数函数)50
String类I/O50
其他形式的字符串面值52
7、结构简介52
在程序中使用结构53
C++结构初始化55
结构可以将string类作为成员吗56
其他结构属性56
结构数组56
结构中的位字段57
9、共用体57
10、枚举58
设置枚举量的值59
枚举的取值范围59
11、指针和自由存储空间59
声明和初始化指针61
指针的危险62
指针和数字63
使用new来分配内存63
使用delete释放内存64
使用new来创建动态数组65
12、指针、数组和指针算术67
指针小结69
指针和字符串71
使用new创建动态结构73
第一章:
预备知识
1、c++简介
c面向过程,c++面向对象。
2、程序创建技巧
编写源代码>>编译器(翻译)源代码>>生成目标代码>>将目标代码与其他代码链接>>生成执行代码.
3、源文件扩展名
第二章:
开始学习c++
1、c++代码区分大小写。
2、c++代码结构
c++.cpp这是个演示文件注译
#include
usingnamespacestd指定命名空间std
intmain()函数头
{函数体开始用{
cout<<"这是个演示文件";函数体(cout输出语句)c++语句必须;结尾
cout< return0;结束main()函数的return语句 } 3、函数 main()是一个函数,示例中intmain()是一个函数头,函数头为函数和程序对其他部分之间的接口(自己理解为下面的函数体)做了总结,{包含的函数体表示计算机应该做什么指令,每一条指令为一个语句,每个语句都应由;结尾。 main()函数最后一条语句“return0”叫做返回语句,叫做返回语句。 函数可被其他函数激活或调用,函数头描述了函数和调用它的函数之间的接口,位于函数前面的叫做函数返回类型(如intmain(),这里main()函数的返回类型是int(整型)),函数后面括号部分叫做形参列表或者叫参数列表。 C++程序必须包含一个名为main()的函数。 4、注译 c++注译以//打头//结尾,可以同代码同一行也可单独一行,也可用c语言注译/*开头*/结尾。 5、c++预处理器和iostream文件 #include预处理器,在主编译之前对源文件进行处理。 #include iostream文件包含了输入和输出的定义,如cout输出cin输出都需要该文件定义。 6、头文件名 iostream叫做包含文件,也叫头文件,c++包含了很多这样的头文件,每个头文件支持一组特定的工具,在C语言中这样的头文件扩展名有.h,来自c语言的头文件在C++中最前面加c,如cmath。 7、名称空间 头文件不包含.h便可以使用命名空间, usingnamespace叫做using编译指令,(暂时理解为存放组件的空间) 类、函数、变量是c++的标准组件,这些组件放置在std空间中, 因此使用usingnamespacestd指令,指令使得std空间的所有名称都可用。 ! 也可省略using编译指令使用以下方式,如: std: : cout<<"字符串";std: : cout< : endl; 8、cout进行c++输出 如cout<<"内容"双引号括起的是字符串,为将要显示的字符, <<符号表示将字符串发送给cout, cout是iostream预定义的一个对象,属性包括一个插入运算符,(语句理解为将<<右边的字符插入到输出流中。 ) ! 小提示<<表示多种运算符,这里是运算符重载的一个例子。 9、控制符endl endl是一个特殊的符号,表示重起一行, 如endl在cout中有特殊含义的称为控制符(在iostream文件中定义) 支持旧的C语言换行方法,如cout="字符\n"; 10、c++代码格式 1、在C++中分号;标识了语句的结尾 2、可将几条代码放在一行,也可放在几行上。 C++语句 1、声明语句和变量 如intcarrots这条声明语句,这条语句指出程序需要组空的存储空间来存储一个整数,并给存储单元制定名称,在C++中int表示整数,编译器负责分配和标记内存细节。 该声明指出此后程序将使用carrots来表示存储在该内存单元中的值,carrots被称为变量,因为它的值可修改, C++中所有变量都需声明 ! 尽量在首次使用变量前声明。 2、赋值语句 赋值语句: 将值赋给存储单元,如: carrots=25; =叫做赋值运算符,可以连续使用改运算符,赋值自右到左进行, 允许对变量的值进行更改,如: carrots=25-1; 3、cout的新用法 如cout=carrots; 没有双引号程序不会打印该字符carrots, 而是打印前面进行过赋值操作的 4、使用cin 例: intX; cout<<”这是个简单的X程序”; cin>>X;(如在这里输入12) cout<<”X加上2等于多少”; X=X+2; Cout< 输出结果为: 这是个简单的X程序,X加上2等于多少,X加2等于14X. cin可以理解为跟cout相反,作为输入流的一个对象,也可以接收通过键盘输入的字符。 5、使用cout拼接 可用格式: cout<<”Nowyouhave”; < <<”carrots”; < 6、类简介 类是用户定义的一种数据类型,类相比对象就像类型相比变量,类定义描述的是数据格式及其用法,而对象则是根据数据格式规范创建的实体。 举例来说类就像所有的著名演员,而对象就好比某个著名演员。 Intcarrots,这个代码创建一个类型为int的变量,corrots可以存储整数,可以加和减,来看cout,它是一个ostream类的对象,ostream类描述了它包含的对象表示的数据以及可以对他执行的所有操作,如cout将数字或字符插入到输出流中,另外的还有cin。 该类库是语言标准制定的类。 7、函数 C++函数分为两种: 有返回值和没有返回值 有返回值: 有返回值的函数将生成一个值,该值可以赋给变量或在其他表达式中使用,例如,标准库中含有一个sqrt()的函数,它返回平方根,加入要计算6.25的平方根并将这个值(返回值)赋给变量,则可以使用一下语句, X=sqrt(6.25);//计算6.25的平方根,并将值赋给变量x// 表达式sqrt(6.25)调用sqrt()函数,sqrt(6.25)称为函数函数调用,被调用的函数叫被调用函数sqrt(),包含函数调用的函数叫做调用函数,如前面声明的函数头intmain()。 参数是发送给函数的值,返回值是从函数中发送回去的值。 8、函数原型 在使用函数之前,编译器必须知道函数的参数类型和返回值类型, C++使用的方式是使用函数原型语句。 C++中应为每个使用的函数提供原型。 函数原型就像使用变量必须变量声明---使用函数就必须提供函数原型(也可称为函数声明) 比如sqrt()函数在c++中定义为一个(可能)带小数部分的数字(如6.25)作为参数,并返回一个相同“类型”的数字,有些语言称这种数字为实数,c++称这种类型为double,那么sqrt()的原型就像这样: doublesqrt(double); 第一个double意味着sqrt()返回一个double值,括号中的double意味着sqrt()需要一个double参数。 因此该原型对sqrt()函数的描述和下面代码使用的函数相同: doublex;//原型结尾有分好表明是一条语句,如果省略分好编译器就会把这行解释为函数头,并接着要求提供定义该函数的函数体。 X=sqrt(6.25) 在程序中使用sqrt()函数时,也必须提供函数原型,可用两种方法来实现。 1、在源代码中输入函数原型 2、在头文件(cmath)中定义函数原型 因有使用sqrt()函数因此这里输入定义函数原型头文件cmath 9、使用库函数 C++还允许创建变量时进行赋值, 如: doublea=sqrt(b)这个过程叫做初始化。 10、函数变体 有些函数需要多项信息,这些函数使用多项参数,参数间用,号隔开, 例如数学函数pow()接受两项函数,返回值以第一个参数为底,第二个参数为幂,该函数的原型如下: Doub=pow(double,double). 例如要计算5的8次方 Pw=pow(5.0,8.0); 另外有一些函数不接受任何参数,例如有一个c库 中包含一个rand()函数,该函数不接受任何参数,并返回一个随机整数,该函数的原型如下: Intrand(void) 关键字void指出,该函数不接收任何参数,如果括号为空省略void,则c++解释为一个不接受任何参数的隐式声明。 可以这样使用该函数。 Myguess=rand(); ! ! c++中函数调用必须使用()号,即使没有参数。 还有一些函数,如编写了一个函数它按美元美分格式显示数字,当向他传递参数23.5时,它将在显示屏显示$23.50。 由于这个函数把值发送给了屏幕,而不是调用程序,因此它不需要返回值, 可以在原型中使用void来指定返回类型,以指出没有返回值。 Voidbucks(double); 不返回值的函数不能将该函数调用放在赋值语句或其他表达式中。 相反,应使用一条纯粹的函数调用语句 Bucks(1234.56); 11、用户定义的函数(此节在第7页有练习题) 添加另外一个用户定义的函数必须在使用之前提供其原型,但是必须提供新函数的源代码,这里放在main()函数后面。 (理解为调用simon必须提供simon函数源代码,例中第二个函数体。 ) 程序清单中mian()函数调用了2次库函数simon(),一次的参数为3,一次的参数为变量count。 下面是程序2.5的运行情况。 12、函数格式 在2.5中函数simon()定义与main()函数定义相同,首先有个函数头,然后有花括号开始的函数体。 13、函数头 在上面2.5清单中,simon()函数的函数头如下 Voidsimon(intn) 开头的void表示simon()没有返回值,因此main()调用simon()不会生成可在main()中赋予变量的数字。 因此调用该函数应按如下方式: Simon(3); 由于simon没有返回值,因此不能这样用它: so=simon(3); 在以上实例中,voidsimon(intn)括号中的int表示使用该函数时应该提供一个int参数,n是一个新的变量,函数调用传递的值将赋予给它,如下面的函数调用将3赋予给simon()函数头中的变量n。 Simon(3); 当函数体中使用cout输出n时,将使用函数调用传递的值,因此2.5实例第一行输出为什么simon(3)显示3的原因。 Simon()的函数头已经说明,simon接收int参数,但不返回任何值。 14、复习intmain()函数头 Intmain()开头的int表明,main返回一个int值,函数后面的括号表明(可包含void),main()没有参数,对于有返回值的函数(main()有返回值,)应用关键字retuen来提供返回值,并结束函数,这就是为什么要在main()结尾使用return0;语句的原因。 mian()函数的值并不返回给程序而是返回给操作系统,操作系统使用main()函数,之后的return0要求返回是0,如0表示程序运行成功,如是非0值表示程序不能正常运行。 15、关键字 在计算机语言中的词汇如: void、double、int等等称为关键字,为c++语言中的专用词汇,这些关键字不能用作变量名,也不能用作函数名。 例外: 如cout在不使用输出操作的时候可以把它作为变量名,但不能在有输出的情况下当做变量名来使用 。 16、用户定义有返回值的函数 有返回值的函数练习题 //stone,将英石转换为磅.cpp #include intstonetolb(int);//提供函数stonetolb原型,返回值为int,参数值为int) intstonetolb(intsts)//函数头,括号中的int表明,使用stonetolb时应提供一个int参数,sts是一个新的变量。 //函数调用时传递的值将被赋予给sts)上面stonetolb(stone)stone的值被赋予给sts { return14*sts;//有返回值的函数,应用return来提供返回值,这里返回main() } intmain()//函数头,main()返回值为int { usingnamespacestd;//使用命名空间std intstone;//变量声明 cout<<"请输入一个整数,单位为“英石”";//输出语句 cin>>stone;//输入键击数据 intpounds=stonetolb(stone);//调用stonetolb变量参数值为stone,返回值为整数赋予pounds(磅),这里 cout< cout< return0;//执行结束返回0 } //函数调用时传递的值: 函数被调用时赋予的值! //有返回值的函数,应用return来提供返回值,main调用了该函数,这里返回给main() 没有返回值的练习题 #include void simon(int); //定义simon原型,参数为int,返回值为void int main()//函数声明 { using namespace std; simon(3); //调用simon,参数值为3 cout<<"pick an intrger: "; int count; //定义变量count为整数 cin>>count;//输入键击数据,并赋予给count; simon(count); //再次调用simon cout<<"done"< return 0; } //因调用了simon函数,下面提供该函数的源代码 void simon(int n)//函数调用时传递的值赋予给"n" { using namespace std; cout<<"Simon says touch your toes "< } 17、多函数程序中使用using指令 在上面的有返回值函数的例子中,两个函数程序都使用了using指令,这是因为都使用了cout,必须用到名称空间std的定义。 在以上实例中,可以用另一种方法让两个函数都能访问名称空间std,即将编译指令放在外面,且两个函数的前面。 让程序能够访问名称空间的方法,四种: 总结 1、C++程序由一个或多个被称为函数的模块组成 2、程序从main()函数开始执行,该函数必不可少 3、函数由函数头和函数体组成,函数头指出函数的返回值(如有)的类型和函数期望通过参数传递给它的信息的类型。 函数体由一系列位于花括号{中的c++语句组成,有多种类型的c++语句,包括以下六种: ⊙声明语句: 定义函数中使用的变量名称和类型 ⊙赋值语句: 使用赋值运算符(=)给变量赋值 ⊙消息语句: 将消息发送给对象,激发某种行动 ⊙函数调用: 执行函数,被调用的函数执行完毕后,程序返回到函数调用语句后面的语句 ⊙函数原型: 声明函数的返回类型、函数接收的参数数量和类型 ⊙返回语句: 将一个值从被调用的函数哪里返回到调用函数中 ◆类是用户定义的数据类型的规范,详细描述了如何表示星系以及可对数据执行的操作。 对象是根据类规范创建的实体,奖项简单变量是根据数据类型描述创建的实体一样。 ◆c++可使用大量的c库函数,要使用库函数,应当包含提供该函数原型的头文件。 复习题 1.在c++程序的模块叫什么? 答: 函数 2.下面的于处理器编译指令是做什么的? #include 答: 在编译之前,使用iostream文件替换编译指令 3.下面的语句是做什么用的? usingnamespacestd; 答: 使用std名称空间的名称定义 4.什么语句可以用来打印“Hello,world”然后开始新的一行 答: cout<<”Hello,word”< 5.什么语句可以用来创建名为cheeses的整数变量? 答: intcheeses; 6.什么语句可以用来将值32赋给变量cheeses? 答: cheeses=32; 7.什么语句可以用来将从键盘输入的值读入变量cheeses? 答: cin>>cheeses; 8.什么语句可以用来打印“WehaveXvarietiesofcheeses“其中X为变量cheeses的当前值? 答: cout<<”Wehave”< 9.下面的函数原型指出了关于函数的哪些信息? 答: intfroop(doublet)//调用froop函数时,应提供一个参数,该参数类型为double,返回值为int。 Voidrattle(intn)//调用rattle函数时应提供一个参数,参数类型为int,该函数不返回任何值.可以这样用他rattle(3); Intprune(void)//该函数不接受任何参数,返回一个整数,例如可以这样用他 int函数名=prune(); 10.定义函数时,什么情况下不必使用关键字return。 答: 函数的返回类型为void的情况下,不必使用他,但如果不提供返回值,则可以用他return; 11.架设您编写的main()函数包含如下代码: Cout<<”请输入PIN码”; 而编译器指出cout是一个未知标识符,导致问题的原因可能是什么,指出3中修复这种问题的方法。 答: 因为头文件没有包含ostream头文件, 修复方法: 1、在头文件加入#include 编程练习 编写一个c++程序,它显示您的姓名和地址 #include usingnamespacestd; intmain() { cout<<"我叫邹伟"< cout<<"住在中国"; cin.get(); cin.get(); return0; } 编写一个c++程序,它要求用户输入一个以long为单位的距离,然后将他转换为码,(一long等于220码). #include usingnamespacestd; intmain() { intlongs; intlonge; cout<<"请输入要转换的数值,按回车键确认: "; cin>>longs; longe=longs*220; cout<<"转换结果为"< cin.get(); cin.get(); return0; } 编写一个c++程序,它使用3个用户定义的函数(包括main()),并生成下面的输出 Threeblindmice Threeblindmice Seehowtheyrun Seehowtheyrun 编写一个程序,让用户输入其年龄,然后显示该年龄包含多少个月。 如下所示 Enteryourage: 29 #include usingnamespacestd; intmain() { intage; cout<<"请输入您的年龄"; cin>>age; cout< age=age*12; cout< cin.get(); cin.get(); return0; } 编写一个程序,其中的main()调用一个用户定义的函数(以摄氏度为参数,并返回相应的华氏度)该程序按下面的格式要求用户输入摄氏度值,并显示结果. #inc
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 百度资料c+primerplus第六版学习笔记 0111 2210+ 百度 资料 primerplus 第六 学习 笔记 2210
![提示](https://static.bdocx.com/images/bang_tan.gif)