目录
标识符
1.只能由数字,字母,下划线构成,且开头不能为数字。
2.不能和C语言关键字重合。
3.最好不要和库函数重名。
基本数据类型:
1.整形
short int(短整型 2B);共2^16种
signed(有符号) [ -2^15,2^15) unsighed(无符号) [0,2^16)
int(整形 4B);共2^32种 共2^16种
signed(有符号) [ -2^31,2^31) unsighed(无符号) [0,2^32)
long(长整形 32位操作系统 4B 64位操作系统 8B);共2^64种
共2^16种 signed(有符号) [ -2^63,2^63) unsighed(无符号) [0,2^64)
long long(超长整形 8B);共2^64种
共2^16种 signed(有符号) [ -2^63,2^63) unsighed(无符号) [0,2^64)
问题:无符号short最大可以为65535,假若我们给short赋值为65536,此时short中保存的数为多少?
答案:0.
此时就涉及到了数据的溢出问题,65535二级制为1111 1111 1111 1111,65536即给65535+1,
即1111 1111 1111 1111 + 0000 0000 0000 0001 = 1 0000 0000 0000 0000,而short只有16个比特位,最左边的1便被移除,所以为0;
问题:有符号short最大可以为32767,假若我们给short赋值为32768,此时short中保存的数为多少?
答案:-32768.
与上面同理,如图
注意:负数整形在内存中的存储方式:
符号位:0 正数 1 负数
原码:绝对值的二进制
反码:原码取反
补码:反码 + 1
2.浮点型
float(单精度浮点型 4B)
double(双精度浮点型 8B)
浮点型数据在内存中的存储方式:float(1 + 8 +23) double(1 + 11 + 52)
以5.125举例:
1.将5.125转换为二进制 0101.001
2.将二进制转化为科学计数法 1.01001 * 2 ^ 2
3.
3.字符型(整形兼容性数据)
char(1B):有signed 与 unsigned 之分。
4.常量 & 变量
常量:在程序运行过程中,其值不能被改变的量,称之为常量。
变量:在程序运行过程中,其值可以被改变的量,称之为变量。
1.变量
(1).整形变量
short , int ,long ,long long
(2).浮点型变量
float , double
(3).字符型变量
char
2.常量
(1).整形常量(默认int,超出int则为long)
(2).浮点型常量(默认double)
(3).字符型常量(默认int)
即:sizeof('A') == 4; sizeof(char) == 1;
(4).符号常量
例如:#define PI 3.14 那么PI就是一个符号常量
运算符
1.sizeof运算符
获取变量或者数据类型在内存中所占用的字节数;
2.算数运算符: + - * /
3.强制类型转换符:(类型名) a
注意:强制类型转换符,只在使用的当此有效
4.赋值运算符
注意:初始化不等于赋值
左值:变量
右值:常量,变量,表达式