------- android培训、java培训、期待与您交流! ----------
----------------------------------------------------
进制:计数的方式,数值的表现形式
二进制 0b 或者 0B 开头
八进制 0 开头
十进制 默认即为十进制
十六进制 0x 或者 0X 开头
其中 A,B,C,D,E,F 分别对应 10,11,12,13,14,15
printf以不同进制形式输出
%d/%i 以带符号的十进制形式输出整数
%u 以不带符号的十进制形式输出整数
%o 以不带符号的八进制形式输出整数
%x 以不带符号的十六进制形式输出整数
%p 输出地址
%c 输出一个字符
%s 输出一个或者多个字符 字符串占位符
%f 以小数形式输出单、双精度数,默认输出6位小数
%e 以标准指数形式输出单、双精度数,数字部分小数位数位6位
二进制 ==> 十进制
0b101 ==> 1 * 2的0次方 + 0 * 2的1次方 + 1 * 2的2次方
= 1 + 0 + 4 = 5
十进制 ==> 二进制
除法取余
n位二进制的取值范围
2位二进制的取值范围:00~11 ==> 0~3 0~2的2次方-1
3位二进制的取值范围:000~111 ==> 0~7 0~2的3次方-1
n位二进制的取值范围:0 ~ 2的n次方-1
/*
char 1个字节
int 4个字节
float 4个字节
double 8个字节
*/
类型说明符 修饰基本数据类型
short 2个字节 %d
//int 4个字节 %d
long 8个字节 %ld
long long 8个字节 %lld
signed 有符号 变量最高位作为符号位
unsigned 无符号 %u 变量最高位不作为符号位
long = long int 其本身并不是数据类型
----------------------------------------------------
位运算
& : 只有对应的两个二进制位都为1时,结果为1,否则为0
规律:二进制中,与 1 相 & 保持原位,与 0 相 & 为 0
| : 只要对应的二个二进制位有一个为1时,结果为1,否则位0
^ : 对应的二进制位不相同时,结果为1,否则为0
规律:相同整数相 ^ 的结果为 0。
过个整数相 ^ 的结果与顺序无关
一个数相 ^ 另一个数两次,原值不变,即为任何数与 0 相 ^ 值不变
~ : 取反,对整数的各个二进制位进行取反,符号位也取反(0变1,1变0)
<< : 左移,高位丢弃,低位补0。因此符号位会被丢弃,可能会改变正负性
规律:左移位数n相当于乘以2的n次方
>> : 右移,将整数的各个二进制位除符号位不变全都右移,符号位补齐高位
即为,为正数时,符号位为0,高位补0
为负数时,符号位为1,高位补1
规律:右移位数n相当于除以2的n次方
----------------------------------------------------
char 类型 : 存储细节,ASCII表
可以当做整型使用:在-128 ~ 127范围内
转义字符
\n 回车换行
\t tab键
\\ 代表一个反斜线
\' 代表一个单引号
\" 代表一个双引号
----------------------------------------------------