数据类型:
内置类型(直接可以使用,本身自带):
字符型/整型/浮点型/布尔类型
自定义类型(可以自己创造):
数组/结构体/枚举/联合体
字符型char
整型int
短整型short int
长整型long [int]
更长的整型(没啥用)long long [int]
浮点型float
单精度~:float
双精度~:double
~:long double
布尔型_Bool bool
原来:0→假;非0→真
使用布尔类型要引入头文件<stdbool.h>
只有两种值:true/false
sizeof操作符
既是关键字,又是操作符,要用%zd打印
sizeof( )计算的结果,计算操作符类型长度,单位是字节
求表达式,可以省略括号;求类型,则不可以
sizeof的计算结果是size-t结果(本质是无符号整型)
sizeof中表达式不计算,只看表达式最后的数据类型
signed和unsigned
修饰字符型和整型类型
signed,表示一个类型带有正负号,包含负值,一般情况下signed int可以省略signed
unsigned,表示不带正负号,只表示零和正整数;同样长度的内存,表示的最大整数值增大了一倍(因为不用表示负数);一般情况下unsigned int 可以省略int
/*char是有符号的char还是无符号的char,取决于编译器,不能省略*/
数据类型的取值范围
limits.h说明了整型类型的取值范围
float.h说明了浮点型类型的取值范围
变量
变量创建的语法形式:
data-type name;
数据类型 变量名
初始化:创建变量并将其赋值
变量的组成只能是字母、数字、下划线;并且不能是数字开头;不能是关键字
全局变量:
在大括号外部定义的变量
局部变量
在大括号内部定义的变量
全局变量与局部变量冲突的时候,局部变量优先
全局变量和局部变量在内存中存储
一般我们在学习c/C++语言的时候,我们会关注内存中的三个区域:栈区、堆区、静态区.
1.局部变量是放在内存的栈区
2.全局变量是放在内存的静态区
3堆区是用来动态内存管理的
算术操作符(双目操作符)
加+;减-;乘*;除/;模%
除法:如果除号的两端都是整数,执行的是整数除法(自动取商);
e.g.(5/20)*100 //0
(5/20.0)*100 //25
如果要计算出小数,那么除号两端至少有一个数是浮点数(%f和%lf打印的时候小数点后默认打印后6位;若留一位小数,改为%.1f,以此类推)
模(取余):只能用于整数,不能用于浮点数
负数求模的正负取决于左数的正负号
赋值
赋值运算符从右向左运算
复合赋值
a=a-5 等效于 a-=5