文章目录
数据类型
常量
就是固定不变的值,一般要求在声明的时候进行初始化,声明的关键字:const 或者 #definde
整型常量
-
1 2 3 4
-
无符号整型常量:1u 8u
-
长整型常量:1L 8L
-
短整型没有特殊标识方式
实数常量
-
单精度(8-9):1.1f
-
双精度(15-16):1.2 (IDE 默认实数类型)
-
特殊表示方式:科学计数法 2.3333E10
字符常量
-
字符边界符号:
''
(单引号),正常字符只有一个 -
特殊字符:转义字符,由
\
和特殊字符组成
字符串常量
-
字符串边界:“”(双引号)
-
所有字符串最后都以"\0"作为结尾,要比字符多一个
变量
变量就是在程序运行过程中可以改变的量,本质上是一个容器,变量就是用来装常量
定义语法
//No.1 定义变量但不初始化
//类型 变量名;
//No.2 定义变量同时进行初始化
//类型 变量名 = 初始值;
C语言基本数据类型
-
int :整数
-
float:单精度
-
double:双精度
-
char:字符
修饰词产生的新类型
-
长整型(long)和短整型(short):只能修饰整数
-
long int
-
short int
-
long和short修饰符可以省略 int
-
-
有符号和无符号:
-
unsigned:无符号,只有整数
-
signed:有符号,负数和整数都包括
-
默认的数据都是有符号
-
特殊修饰词
-
const
-
创建常量
-
必须初始化
-
不能被修改
-
-
static修饰
-
初始化代码在程序运行过程中只执行一次
-
保存上一次程序运行的结果
-
-
extern:修饰外部变量
数据存储
十进制:满十进一(dec)
二进制:满二进一(binary)
八进制:满8进一(oct)
十六进制:满十六进一(hex)
进制转换
- 十进制转其他进制:短除法,转几进制就除以几,逆序写余数
- 其他进制转十进制:加权法
二进制转八进制、十六进制:一个八进制等于三个二进制位,一个十六进制等于四个二进制位,加权计算
二进制与存储
基本数据类型占用的内存
原码、反码、补码
计算机都是以补码的形式存储数字在内存中,可以方面加减乘除
原码:引入符号位,最高位标识符号位,1位负数,0为正数
反码:原码符号位不变,其他各位取反
补码:反码的基础上加1(计算机中真实存储数据)
正数三码都是同一个,负数用补码存储
数据的真实存储
数据大小端
高地址与低地址、高字节和低字节
网络数据都是大端方式,如果要在本地显示正确数据,需要做转换,本地数据放到网络上传输需要转换为大端