C++基础入门第四章
第四章 表达式 表达式由一个或多个运算对象(operand)组成,对表达式求值将得到一个结果(result)。字面值和变量是最简单的表达式(expression),其结果就是字面值和变量的值。把一个运算符(operator)和一个或多个运算对象组合起来可以生成较复杂的表达式。 4.1 基础4.1.1 基本概念 C+定义了一元运算符(unary operator)和二元运算符(binary operator)。作用于一个运算对象的运算符是一元运算符,如取地址符&和解引用符*:作用于两个运算对象的运算符是二元运算符,如相等运算符=和乘法运算符*。除此之外,还有一个作用于三个运算对象的三元运算符。函数调用也是一种特殊的运算符,它对运算对象的数量没有限制。一些符号既能作为一元运算符也能作为二元运算符。 组合运算符和运算对象 对于含有多个运算符的复杂表达式来说,要想理解它的含义首先要理解运算符的优先级(precedence)、结合律(associativity)以及运算对象的求值顺序(order of evaluation)。 12345678910#include...
C++基础入门第三章
第三章 字符串、向量和数组3.1 命名空间using声明 目前为止,我们用到的库函数基本上都属于命名空间std,而程序也显式地将这一点标示了出来。因此,std::cin的意思就是要使用命名空间std中的名字cin。有了using声明就无须专门的前缀(形如命名空间::)也能使用所需的名字了。using声明具有如下的形式: 一旦声明了上述语句,就可以直接访问命名空间中的名字. 每个名字都需要独立的using声明 按照规定,每个using声明引入命名空间中的一个成员。 头文件不应包含using声明 位于头文件的代码一般来说不应该使用using声明。这是因为头文件的内容会拷贝到所有引用它的文件中去,如果头文件里有某个using声明,那么每个使用了该头文件的文件就都会有这个声明。对于某些程序来说,由于不经意间包含了一些名字,反而可能产生始料未及的名字冲突。 3.2 标准库类型string 标准库类型string表示可变长的字符序列,使用string类型必须首先包含string头文件。作为标准库的一部分,string定义在命名空间std中。 3.2.1...
C++基础入门第二章
第二章 变量和基本类型2.1基本内置类型 C++定义了一套包括算术类型(arithmetic type)和空类型(void)在内的基本数据类型。其中算术类型包含了字符、整型数、布尔值和浮点数。空类型不对应具体的值,仅用于一些特殊的场合,例如最常见的是,当函数不返回任何值时使用空类型作为返回类型。 2.1.1算数类型 算数类型分为两类:整型(integral type,包括字符和布尔类型在内)和浮点型。 类型 含义 最小尺寸 bool 布尔类型 未定义 char 字符 8bits wchar_t 宽字符 16bits char16_t Unicode字符 16bits char32_t Unicode字符 32bits short 短整型 16bits int 整型 16bits (在32位机器中是32bits) long 长整型 32bits long long 长整型 64bits (是在C++11中新定义的) float 单精度浮点数 6位有效数字 double 双精度浮点数 10位有效数字 long...
C++基础入门第一章
第一章 开始1.1 编写一个简单的C++程序12345#include <iostream>int main(){ return 0;} 一个函数的定义包含四部分:返回类型(return type)、函数名(function name)、一个括号包围的形参列表(parameter list ,允许为空)以及函数体(function body)。虽然main函数在某种程度上比较特殊,但其定义与其他函数是一样的。 在本例中,main的形参列表是空的(()中什么也没有)。 main函数的返回类型必须为int,即整数类型。int类型是一种内置类型(built-intype),即语言自身定义的类型。 函数定义的最后一部分是函数体,它是一个以左花括号(curly brace)开始,以右花括号结束的语句块(block of...