linux VIM下删除与复制 :
在命令模式下: n yy -- 复制n行(光标所在位置为准 ) P粘贴
N p -- 粘贴N份(光标所在的下一行)
dd--删除(光标这一行) ; dd+p--剪贴
ctrl+v--复制块 ;
shift+v--复制行 --------- 此时选中后y为复制,d为删除,d+p为剪贴
注意:ctrl+v--复制块可以复制任意的方向键选择内容,从程序任意地方插入。
u--撤销(几下u可以撤销多少次) ;
ctrl+r--反撤销
进入底层代码可以用 q!强制退出
:/ + 字符串 --- 在vi里找到相应的字符串
变量的定义与存储
有符号数
有一位为符号位
包含了 正数 负数
无符号数
不包含符号位
包含非负数
1、unsigned int
0000 0000 0000 0000 0000 0000 0000 0000 //最小值
1111 1111 1111 1111 1111 1111 1111 1111 //最大值
+ 1
---------------------------------------
1 0000 0000 0000 0000 0000 0000 0000 0000 2^32 - 1 //42亿多
2、signed int [-2^31 ~ +2^31-1]
0|000 0000 0000 0000 0000 0000 0000 0000 //最小值
0|111 1111 1111 1111 1111 1111 1111 1111 //2 ^ 31 - 1 //21亿多
1|000 0000 0000 0000 0000 0000 0000 0000 //最小值
1|111 1111 1111 1111 1111 1111 1111 1111 //2 ^ 31 - 1 //21亿多
1|000 0000 0000 0000 0000 0000 0000 0000 //某个负数的补码 ---规定 符号位 既充当符号位 又 充当数值位
1|000 0000 0000 0000 0000 0000 0000 0000 //负数
//负的0
//负数 -2,147,483,648
1|111 1111 1111 1111 1111 1111 1111 1111 //某个负数的补码
1|000 0000 0000 0000 0000 0000 0000 0001 //-1
3、unsigned short [0~2^16-1] //65536-1
4、signed short [-2^15 ~ +2^15-1] //-32768 ~ 32767
浮点型变量
数据存储
6.25
step1: 将小数 转换为 二进制形式的小数
整数部分: (除2取余法)
0110
小数部分:(乘2取整法)
0.25 * 2 = 0.5 --- 0
0.5 * 2 = 1 --- 1
组合:
0110.01
step2:将二进制形式的小数,写成科学计数法形式
1234.56 ---> 1.23456*10^3
110.01 ---> 1.1001 * 2^2 //科学计数法形式
step3:按照 IEEE 754 标准 存放
1位 符号位|8位-指数位|尾数位
| |
0 | 2 + 127 |
| -127~128 |
1000 0001 1001 0000 0000 0000 0000
0100 0000 1100 1000 0000 0000 0000 0000
4 0 c 8 0 0 0 0
浮点常量的类型:
默认识别为double类型
0.9f //表示识别为 float类型
0.9L //L表示long double
整型常量:
说明类型
123L //long int
123LL //long long int
123UL //unsigned long int
----------------------------------
字符型:
a b c
"tom"
t <--->0100101010
a <--->0101010
编码
ASCII
a ---> 编码值 (数值) ---> 无符号的整数
常量形式:
'a' //字符常量
变量:
char ch; //tiny int
unsigned char [0~2^8-1] //255
signed char [-128~127]
ascii表:
0~32 控制字符 不可见
'0'~'9' //48~57
'A'~'Z' //65~90
'a'~'z' //97~122
'0' ----- 0
大小写转换
加减32