通常我们写代码或者学习看demo时都会用到二进制或者十六进制,所以首先需要学会各个进制间的换算
二进制:0和1
八进制:0~7
十进制:0~9
十六进制:0~9,A~F
二进制(B) | 八进制(Q) | 十进制 | 十六进制(H) |
0 | 0 | 0 | 0 |
1 | 1 | 1 | 1 |
10 | 2 | 2 | 2 |
11 | 3 | 3 | 3 |
100 | 4 | 4 | 4 |
101 | 5 | 5 | 5 |
110 | 6 | 6 | 6 |
111 | 7 | 7 | 7 |
1000 | 10 | 8 | 8 |
1001 | 11 | 9 | 9 |
1010 | 12 | 10 | A |
1011 | 13 | 11 | B |
1100 | 14 | 12 | C |
1101 | 15 | 13 | D |
1110 | 16 | 14 | E |
1111 | 17 | 15 | F |
10000 | 20 | 16 | 10 |
10001 | 21 | 17 | 11 |
10010 | 22 | 18 | 12 |
eg:58H=01011000 B=88=130(Q)
二进制转八进制,取三合一 01 011 100 =134
二进制转16进制,取四合一 0101 1100 =5C
二进制转10进制,2的次方相加 0100011101=256+16+8+4+1=285
C语言基础
运算符:
赋值运算符: “=” eg: int a=5; 将5赋值给变量a
算术运算符:“+”,“-”,“*”,“/”,“%”,“++”自增,“- -”自减,
比较运算符:“= =”,“!=”不等于,“<”,“>”,“<=”,“>=”,
逻辑运算符:
&&(与)
||(或)
!(非)
位运算符(用于对二进制位进行操作):
&(位与)有0则0
0000 0000 1010
&
0000 1001 0111
-------------------
0000 0000 0010
|(位或)有1则1
0000 0000 1010
|
0000 1001 0111
-------------------
0000 1001 1111
^(位异)相同则0,不同则1
0000 0000 1010
^
0000 1001 0111
---------------------
0000 1001 1101
~(位非,取反)
~ 0000 0000 1010
1111 1111 0101
<<(左移)
>>(右移)
三元运算符:“?”
a=(b>c)?b:c;
如果b大于c,则a被赋值为b,否则被赋值为c