Go运算符
1. 算数运算符
如: + - * / ...
2. 关系运算符
== != > < >= <=
3. 逻辑运算符
| 运算符 | 含义 |
|---|---|
| && | 与运算。如果两个操作数都⾮零,则条件变为真 |
| || | 或运算。如果任何两个操作数是⾮零,则条件变为真 |
| ! | ⾮运算。使⽤反转操作数的逻辑状态。如果条件为真,那么逻辑⾮操后结果为假 |
4. 位运算符
位运算符对整数在内存中的⼆进制位进⾏操作。
| 运算符 | 描述 | 实例 |
|---|---|---|
| & | 按位与运算符 "&" 是双⽬运算符。 其功能是参与运算的两数各对应的⼆进位相与 | (A & B) 结 果为 12, ⼆ 进制为 0000 1100 |
| | | 按位或运算符 "|"是双⽬运算符。 其功能是参与运算的两 数各对应的⼆进位相或 | (A | B)结果为61,二进制为 0011 1101 |
| ^ | 按位异或运算符 "^" 是双⽬运算符。 其功能是参与运算的 两数各对应的⼆进位相异或,当两对应的⼆进位相异时,结果为 1。 | (A ^ B) 结 果为 49, ⼆ 进制为 0011 0001 |
| << | 左移运算符 "<<“是双⽬运算符。左移 n 位就是乘以 2 的 n 次⽅。 其功能把”<<“左边的运算数的各⼆进位全部左移若 ⼲位,由”<<" 右边的数指定移动的位数,⾼位丢弃,低位补 0。 | A << 2 结 果为 240 ,⼆进制为 1111 0000 |
| >> | 右移运算符 ">>" 是双⽬运算符。右移 n 位就是除以 2 的 n 次⽅。其功能是把 ">>“左边的运算 数的各⼆进位全部右移若⼲ 位,”>>" 右边的数指定移动的位数。 | A >> 2 结果为 15 ,⼆进制为 0000 1111 |
5. 赋值运算符
| 运算符 | 描述 | 实例 |
|---|---|---|
| = | 简单的赋值运算符,将⼀个表达式的值赋给⼀个左值 | C = A + B 将 A + B 表达式结果赋值给 C |
| += | 相加后再赋值 | C += A 等于 C = C + A |
| -= | 相减后再赋值 | C -= A 等于 C = C - A |
| *= | 相乘后再赋值 | C *= A 等于 C = C * A |
| /= | 相除后再赋值 | C /= A 等于 C = C / A |
| %= | 求余后再赋值 | C %= A 等于 C = C % A |
| <<= | 左移后赋值 | C <<= 2 等于 C = C << 2 |
| >>= | 右移后赋值 | C >>= 2 等于 C = C >> 2 |
| &= | 按位与后赋值 | C &= 2 等于 C = C & 2 |
| ^= | 按位异或后赋值 | C ^= 2 等于 C = C ^ 2 |
| |= | 按位或后赋值 | C | = 2 等于 C = C | 2 |
6. 转义符
| 符号 | 意义 | ASCII码值 |
|---|---|---|
| \n | 换⾏ (LF) ,将当前位置移到下⼀⾏开头 | 010 |
| \r | 回⻋ (CR) ,将当前位置移到本⾏开头 | 013 |
| \t | ⽔平制表 (HT) (跳到下⼀个 TAB 位置) | 009 |
| \\ | 代表⼀个反斜线字符’\’ | 092 |
| \’ | 代表⼀个单引号(撇号)字符 | 039 |
| \" | 代表⼀个双引号字符 | 034 |
| \? | 代表⼀个问号 | 063 |
7. 其他运算符
| 运算符 | 描述 | 实例 |
|---|---|---|
| & | 返回变量存储地址 | &a; 将给出变量的实际地址。 |
| * | 指针变量 | *a; 是⼀个指针变量 |
8. 运算符优先级
有些运算符拥有较⾼的优先级,⼆元运算符的运算⽅向均是从左⾄右。下表列出了所有运算符以及它们的优先级,由上⾄下代表优先级由⾼到低
| 优先级 | 分类 | 运算符 | 结合性 |
|---|---|---|---|
| 1 | 逗号运算符 | , | 从左到右 |
| 2 | 赋值运算符 | =、+=、-=、*=、/=、 %=、 >=、 <<=、&=、^=、= | 从右到左 |
| 3 | 逻辑或 | || | 从左到右 |
| 4 | 逻辑与 | && | 从左到右 |
| 5 | 按位或 | | | 从左到右 |
| 6 | 按位异或 | ^ | 从左到右 |
| 7 | 按位与 | & | 从左到右 |
| 8 | 相等 / 不等 | ==、!= | 从左到右 |
| 9 | 关系运算符 | <、<=、>、>= | 从左到右 |
| 10 | 位移运算符 | <<、>> | 从左到右 |
| 11 | 加法 / 减法 | +、- | 从左到右 |
| 12 | 乘法 / 除法 / 取余 | *(乘号)、/、% | 从左到右 |
| 13 | 单⽬运算符 | !、*(指针)、& 、++、–、+(正号)、-(负号) | 从右到左 |
| 14 | 后缀运算符 | ()、[]、-> | 从左到右 |
初学linux,每学到一点东西就写一点,如有不对的地方,恳请包涵!

浙公网安备 33010602011771号