Primer

初始化

  1. 列表初始化且初始值存才丢失信息的风险时,编译器会报错
long double id =3.1415926536;
int a{id}, b = {id};
  1. 一个未被初始化(既未被显式初始化也未被默认初始化)的内置类型变量,如果试图拷贝或以其他形式访问此类型时,将引发错误。
  2. 如果一个类要求每个对象都要显示初始化,如果创建时未显示初始化,将报错

变量名/标识符

  • 不能以连续的两个下划线开头
  • 不能以下划线紧连大写字母开头
  • 函数体外:不能以下划线开头

指针

  • 试图拷贝或以其它形式访问无效指针的值将引发错误
  • 空指针不是无效指针
  • 但是访问空指针会带来无法预计的后果,因此也是应该避免的
  • int变量赋值给int型指针会报错,即使int变量的值为0也不行,但字面值0是可以复制给指针的,得到一个空指针。
  • 使用未经初始化的指针,经常会来带错误

常量

  • 非常量引用的初始值类型必须与被引用对象内型一致;
    • 非常量引用的初始值类型必须为左值;
int i = 42;
const int &r1 = i;     //正确
const int &r2 = 4;   //正确
const int &r3 = r1 *2;   //正确:常量引用的初始值可以是任意表达式或初始值
int &r4 = r1 *2;  //错误:非常量引用的类型必须一致,等号右边的类型是一个常量引用
int &r5 = 4;  //错误

Cha1

main 函数

  1. 返回的类型必然是int即整数型
  2. 因此,return返回一个整数,0表示成功,非0返回值由系统指定,一般表示不同的错误类型## 输出运算符:<<
std::cout << "Enter tow numbers:" << std::endl;
  1. 左侧必须是一个ostream对象,右侧是要打印的值
  2. 将右侧给定的值写入左侧的ostream对象中,第一个运算符的结果作为第二个运输符的对象。
(std::cout << "Enter tow numbers:") << std::endl;
  • std是标准命名空间,标准库定义的所有名字都在namespace std
  • 标准库中定义的所有名字都在命名空间std中。
  • :::作用域运算符

以输入流为判断条件

  • 当输入流结束时即遇到文件结束符或输入流无效时即读入的值类型不对时,变为False
  • 因此输入流要有结束符,windows系统中:Ctrl + Z

Dev-C++包含自动的头文件

将头文件放入路径:D:\Program Files (x86)\Dev-Cpp\MinGW64\include

Cha2

2.1变量和基本类型

无符号数值的问题

  • 一个负数和无符号正整数相加时,有符号的负数会被强制转化为无符号的正整数;
  • 整数在计算机内是按补码形式存储的。

参考
计算机中整数为什么以「补码」的形式存储?
负数时的有符号整型和无符号整型的转换

浮点数的存储

  • 先将带小数的十进制数转为带小数的2进制数;
  • 再用科学计算法表示为: 1. ∗ ∗ ∗ ∗ × 2 n 1.****\times2^n 1.×2n;
  • 第一位表示正负符号,32位时用8位表示指数,64位时用11位表示指数,余下表示****的尾数部分,分别用23bit和52bit存储尾数。

参考
十进制小数转化为二进制小数
浮点型数据存储方式

字符串的存储

  • 字符串是以数组的形式存在内存中
  • 数组以Null结尾,占用一个字节,标记字符串的结尾

数据结构-节点

  • 每个Node包含一个数据和一个指针
  • 指针存储下一个Node的内存地址,一直向下,形成一个链接
  • 循环型链表:最后一个Node的指针指向开头
  • 非循环性链表:最后一个Node的指针是Null

字面值

  • 即“表面值”,相对应的是存储在内存的值
  • 字面值常量的形式和值决定了它的数据类型,也就是存储的值
  • 字符串"A"的字面值是:字符A 加一个空字符'\0'
    前缀后缀

左值右值

  • 左值:既能够出现在等号左边也能出现在等号右边的变量(或表达式)
  • 右值:右值指的则是只能出现在等号右边的变量(或表达式)
  • 变量是左值,常量是右值
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值