第二章 初识C++(《C++Primer Plus》读书笔记)

1、C++一些常识

        (1)C++对大小写字母敏感。

        (2)C++的输入与输出函数:cout、cin(这与C语言的输入输出函数pintf、scanf不同,这是在其上的改进,但是C++也可以使用C语言风格的输入输出语句,只需要包含stdio.h文件即可。)

        (3)要在windows控制台运行一些程序,如果想要控制台窗口界面在程序运行结束后停留在屏幕上,可以在程序的return语句前添加一条或两条cin.get()语句即可。究竟添加几条取决于程序自身。

1.1_main函数

        C++函数包括函数头(function heading)函数体。其中函数头对 函数程序其他部分之间的接口进行了总结。通常main函数被启动代码调用,而启动代码是由编译器添加到程序当中的,启动代码是程序和操作系统之间的桥梁。(可以理解为操作系统调用了main函数,因此main函数的返回值其实是返回给操作系统。)

C++的main函数函数头:

int main()

int main(void)

C语言的函数头:

main()

扫描二维码关注公众号,回复: 5776980 查看本文章

       C++中,如果使用main函数可以省略返回语句,因为编译器如果发现没有返回语句会自己自动添加。而别的优返回值的函数绝对不可以省略返回语句。C++中,括号空着与与void同效。而在C语言中让括号空着代表对是否接受参数保持沉默。

       通常情况下,一个独立的程序必须有一个main函数以作为函数的入口。但是某些特殊的情况可以不编写main 函数。例如下面的情况:

       (1)在windows环境下,编写动态链库(DLL)模块,这种程序时其他windows程序可以使用的代码,它不是独立的程序,所以不需要添加mian函数。

       (2)用于专用环境的程序。例如某些特定芯片的机器人控制程序。

       (3)有些编程环境提供一个框架程序,用以调用一些非标准函数,如_tmain函数,其实这种情况存在一个隐藏的main函数,它调用了_tmain函数。

1.2_C++注释

       C++风格的注释是//...格式,C语言风格的注释是/*...*/格式,但是两种语言的注释相互通用。

1.3_C++预处理器和iostream文件

       C++预处理其处理以#开头的编译指令。

       为什么要添加iostream文件到程序中?这涉及到程序与外部之间的通信。#inlude的预编译指令其实是将库文件取代include部分并用户代码组合成一个复合文件(用户代码文件并没有被修改),以备编译的下一阶段使用。

1.4_C++头文件

        包含文件(include file)头又叫文件(header file)。C风格和旧式的头文件以扩展名.h结尾,而新式C++风格的头文件则没有.h扩展名。C风格的头文件格式可以转变为C++风格的头文件格式,转换的规则为去掉.h扩展名,并在头文件开头加上前缀字母c,例如:math.h可以转变为cmath。纯粹的C++头文件文件不仅仅是在明明上做了一点改变,而是没有.h扩展名的头文件(包括由C头文件改成的没有.h扩展名的头文件)也可以包含名称空间。

1.5_C++名称空间

名称空间的使用方法:

       (1)在函数外部使用。例如:using namespace std

       (2)在函数外部使用特定的名称。例如:using namespace std::cout

       (3)在函数内部使用。

       (4)在函数内部使用特定的名称。

1.6_C++换行符

C++风格:控制符endl:表示另起一行

C风格换行符:\n

       二者的差别:endl确保程序继续运行前刷新输出(将其立即显示在屏幕上),而\n没有这样的保证。

1.7_C++源代码的格式化

       在C++中回车的作用和空格或制表符相同,其三者可以相互替换,三者统称为空白(white space)。不可分割的元素叫做标记(token),必须使用空白将标记分开。

2、C++语句

2.1声明语句和变量

       声明变量的提供的信息:需要的内存大小以及内存单元的名称。也就是用名称来标识某个内存单元。

为什么变量必须要声明?

如果不对变量声明,看似是友好的,但是程序很容易出错。例如前面定义了一个变量,而后面使用时,不小心打错了变量的名字。那么程序其实上又重新创建了一个变量,这样一来,程序的运行可能跟预想的完全不一样。

       变量的定义声明(defining declaration), 简称定义(defination)。这是开辟了内存空间的定义声明。而有些声明是不开辟内存空间的声明。除此之外还有一种更加复杂的声明,引用声明(reference declaration)。它是指定义在别处,而在此处应用的某变量。C++变量的声明和C语言是不同的,C风格的声明一般位于程序的前面,并用一行空白以示区别。而C++可以是使用前的任何位置定义声明变量。

2.2赋值语句

C++和C可以连续使用赋值运算符,如所示。

a=b=c;

2.3cout

cout可用于字符串和整数。这是因为这个类使用了操作符重载:<<。C++插入运算符将会根据其后的数据类型进行相应的行为调整。

3、其他C++语句

3.1使用cin

       使用cin通常要在右侧提供一个变量,以接受抽取的信息。插入运算符<<>>表示数据流动的方向。而cin和cout代表着一个数据流对象。将某些字符打印到屏幕上可以理解为将字符插入到字符流中,流向屏幕。

3.2使用cout进行拼接

方案一:

cout<<''char1"<<"char2"<<"char3"<<endl

方案二:

     cout<<''char1;

     cout<<"char2";

     cout<<char3";

     cout<<endl;

方案三:  

     cout<< "char1"

           <<"char2"

           <<"char3"

           <<endl

3.3类简介

       类描述了一种数据类型的全部属性(包括操作它的方法),对象是根据这些描述实例化出来的对象。类类似于函数,可以来自用户自定义,也可以来自于类库。类库没有被内置到C++语言中,而是C++标准制定的类。

类描述指定了对类对象执行的所有操作,要对特定对象执行这些允许的操作,需要给该对象发送一条消息,C++提供两种发送消息的方式:一种是通过类方法,一种是通过类运算符(cin、cout就是采取了这种方式)。

4、一些术语

       (1)术语参数(argument):计算机人员用来表示从一个函数传递给另一个函数的信息。

       (2)return语句(return statement)

       (3)形参列表(parameter list)

       (4)参数列表(argument list)

       (5)调用函数(calling function)

       (6)被调函数(called function)

       (7)返回值(return value)

猜你喜欢

转载自blog.csdn.net/lintianyi9921/article/details/88812599