C++ primer 第二章总结--------[ 变量和基本类型]

数据类型

下图一处错误:默认带符号那儿的框框应该指向整数型那一栏
浮点型没有unsigned/signed的概念
在这里插入图片描述

类型含义最小尺寸尺寸
bool布尔类型未定义1字节
chat字符8位1字节
wchar_t宽字符16位
char16_tUnicode字符16位
char32_tUnicode字符32位
short短整型16位2字节
int整型16位4字节
long长整型32位4字节
long long长整型64位8字节
float单精度浮点数6位有效数字4字节
double双精度浮点数10位有效数字8字节
long double扩展精度浮点数10位有效数字16字节

计算机以 “比特序列” 存储数据-------每个比特非0即1
可寻址的最小内存块成为 “字节” ----大多数机器的字节由8比特构成
存储的基本单位成为 “字” -------------大多数机器的字由32(4字节)或64(8字节)比特构成

类型决定了数据所占的比特数以及如何解释这些比特的内容
C++提供的几种字符类型,其中多数支持国际化;
基本的字符类型是char–>一个char的空间应确保可以存放机器基本字符集中任意字符对应的数字值–>一个char的大小和一个机器字节一样.

类型转换

强制转换原则:
其他–>bool: //注意一个非布尔值作为条件的时候,它的类型会自动转换为布尔值

  • 存在/满足/数值不为0------->bool=1;
  • 不存在/不满足/数值为0---->bool=0;

bool–>其他:

  • bool=1---->整数型和浮点型=1/char对应"标题开始"
  • bool=0---->整数型和浮点型=0/char对应NULL

unsigned–>signed:

signed–>unsigned://注意算术表达式中既含有符号数又含有无符号数时,符号数会自动强制转化为无符号数

  • 转化为取模后的值

浮点型–>整数型:

  • 近似处理,只保留小数点之前的部分

整数型–>浮点型:

  • 小数部分记为0

字面值常量

在这里插入图片描述转义序列:
1.不可打印字符:如退格符换行符…
2.特殊含义字符:如双引号,问号…

意义转义符意义转义符意义转义符
换行符\t退格符\b回车符\r
横向制表符\t纵向制表符\v进纸符\f
报警铃\a双引号\"单引号\’
反斜线\\问号\?
报警铃\7换行符\12空格\40
空字符\0字符M\115字符M\x4d

倒数两行属于泛化的转义序列. 上面6个只是一些示例,可以自己以此类推
格式为—

  • 1.\x后紧跟1~多个十六进制数字
  • 2.\ 后紧跟1~3个八进制数字

关于制定字面值的类型,暂时不会用到,所以不写了.
没有short类型的字面值常量

变量

1.什么是变量?

变量提供一个具名的,可供程序操作的存储空间;
每个变量都有对应一个数据类型;(可以认为是创建了一个"该类型下" 的 “对象”)

2.变量的初始化和赋值?

1.初始化不是赋值
2.如何初始化和赋值都要根据该变量所属的数据类型来判断
3.关于默认初始化

  • 定义于任何函数体之外的变量被初始化为0; //有例外
  • 每个类各自决定其初始化的方式 ( 是否允许不经初始化就定义对象也由类自己决定 )
  • 绝大多数类都支持无须显示初始化而定义对象
  • 一些类要求每个对象都显示初始化
  • 定义于函数体内的内置类型的对象如果没有初始化,则其值未定义

4.赋值初始化方法:

  • int a=0;
  • int a(0);
  • int a={0};
  • int a{0};

下面两种属于列表初始化------
如果使用列表初始化且存在丢失信息的风险时,编译器将报错,也就是说会出现不合法的情况;
但是如果使用上面两种方法,编译器不会报错,但信息是丢失了.

3.声明和定义?

分离式编译 //大概知道,不写了

4.标识符? //变量命名注意事项

1.要能体现实际含义
2.由数字,字母,下划线组成
3.一般使用小写/一般用大写开头
4.数字不能在开头
5.不能命名为关键字,也最好不要命名为库标识符

5.变量作用域?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值