C++Primer Plus读书笔记-处理数据

《C++ Primer Plus》第三、四章

基本类型

简单变量

程序必须记录三个基本属性:

  • 信息存储于何处
  • 存储什么值
  • 存储什么类型的值

变量名规则

  • 只能用字母字符、数字和下划线

  • 第一个字符不能为数字

  • 需要对大小写字符进行区分

  • c++关键字不能用作变量名,例如int、double

  • 变量名长度没有限制,但不建议太长

  • 尽量不用类似_time_stop__Donut类的名称,避免编译后行为出错。

    类似_time_stop,会被用作全局标识符

    类似_Donut,会被用作编译器及其使用的资源

  • 两个或更多个单词组成名称,可以用_将单词分开、或者从第二个单词开始首字母大写。

整型

没有小数部分的数字,如2、-2等。

C++提供的整型,确保了最小长度

short

至少16位长

int

int至少与short一样长

long

long至少32位,且至少与int一样长

long long

至少64位,且至少与long一样长

初始化

赋值声明合并在一起。

也可以使用字面值常量来进行初始化。

需要注意以下问题:

  1. 使用变量来初始化另一个变量时,必须是前者已经定义过

    1
    2
    3
    int uncles;
    int aunts = uncles;
    //这种写法就不正规,需要uncles 先进行赋值
  2. 知道变量初始值为什么时,应该立即进行初始化

    1
    2
    3
    short year;
    year = 1492;
    //在知道初始值的情况下,提前进行初始化
其他初始化方式
1
2
3
4
5
int aa = {24} //set aa = 24

//C++ 11后提供方法
int emus{7} //set emus = 7
int rocs = {}//set rocs = 0

无符号类型

上面提到的四种整数类型,都存在一种不能存储负值的无符号变体。

仅当数值不会为负数时才应使用无符号类型

需要创建无符号的整数类型时,只需要使用unsigned进行修饰即可。

1
2
3
unsigned short change;

unsigned long longNum;

无符号类型相对于基本类型,增大了变量可以存储的最大值。例如short

基本类型条件下,表示范围为-32768 ~ 32767

无符号类型条件下,表示范围为0 ~ 65535

C++确保了无符号类型的行为:超出了限制,就会设置为范围另一端的取值。

例如unsigned short shortNum = 0 ; shortNum = shortNum - 1;则当前shortNum65535

例如short shortNum = SHRT_MAX;shortNum = shortNum + 1;则当前shortNum-32768

选择整数类型

默认选择int

如果变量可能表示的整数值大于16为整数,则使用long

如果要存储更大的值,则使用long long

使用short可以节省内存,一般用于大型整数数组

char类型

专门为**存储字符(字母和数字)**而设计的。

1
char testChar = 'A'

一般‘’表示字符,“”表示字符串。

char表示的范围为-128 ~ 127unsigned char表示的范围为0 ~ 255

bool类型

用于表示真和假,分别用预定义的字面值truefalse表示。

1
2
3
4
5
6
7
8
bool is_ready = true; //表示true
//其中true 为 1 false 为 0

int ans = true; //ans = 1
int promise = false;//promise = 0

bool start = -100; //非0就 表示true
bool stop = 0; //0 就表示 false

const限定符

用于表示常量

1
const int Months = 12;

使用const限定了声明的含义。

浮点数

复合类型


C++Primer Plus读书笔记-处理数据
https://leo-wxy.github.io/2021/01/07/C-Primer-Plus读书笔记-处理数据/
作者
Leo-Wxy
发布于
2021年1月7日
许可协议