C++学习第一天
C++primer 读书笔记
C++语言的基础知识
变量和基本类型
1、C++定义了包括算数类型和空类型在内的基本数据类型:
其中算数类型包括字符、整型数、布尔值、浮点数
当函数不返回任何值时使用空类型作为返回类型。
2、可寻址的最小内存块为字节(byte),存储的基本单元称为字(word)
3、带符号类型和无符号类型。int、short、long和long long都是带符号的。在其前添加unsigned就可以得到无符号类型;
4、8比特的unsigned char 可以表示0-255区间的值。8比特的signed char理论上可以表示**-127-127**之间的值。
5、执行浮点数运算选用double,这是因为float通常精度不够而且双精度浮点数和单精度浮点数的计算代价相差无几。
6、变量和对象一般可以互换使用。变量和对象的定义:变量:类型说明符+变量名。对象:是指一块能存储数据并具有某种类型的内存空间。
7、string是一种库类型,表示可变长的字符序列。
8、初始化和赋值是两个完全不同的操作。 初始化的含义是创建变量时赋予其一个初值,而赋值的含义是把对象当前的值擦除,而已一个新值来代替。
9、C++11 新标准的一部分,用花括号来初始化变量得到全面的应用。
int a = 0; int a = {0}; int a{0}; int a(0);
10、使用列表初始化如果存在丢失信息的风险,则编译器将报错。
long double ld = 3.1415926536
int a{ld},b = {ld}; //错误:转换未执行,因为存在信息丢失的危险
int c(ld),d = ld; //正确:转换执行,丢失部分值
11、建议初始化每个内置类型的变量。
12、声明 使得名字为程序所知,定义 负责创建与名字关联的实体
如果想声明一个变量而非定义它,就在变量名前添加关键字extern,而且不要显示的初始化变量:
extern int i; //声明i而非定义
int j; //声明并定义j
13、任何包含显示初始化的声明即成为定义。赋值将抵消extern的作用。
extern double pi = 3.1415;//定义
14、int double = 3.14; //错误,不能使用关键字
#include <iostream>
int main()
{
int sum = 0;
for(int val =1;val<=10;++val)
sum+=val;
std::cout << "Sum of 1 to 10 inclusive is " << sum << std::endl;
return 0;
}