表达式:表达式就是符号(如加号、减号)与操作数(如b,3等)的组合。
运算符:运算符是一种特殊的符号,用以表示数据的运算、赋值和比较等。
- 赋值运算符:= ( = 表赋值:变量名 = 表达式; 是将右边的值赋给左边的变量)
- 基本算数运算符:+、-、*、/、%(取余)、++、--
(注意:a ++ 表示先赋值后运算,++ a 表示先运算后赋值) - 复合算数运算符:+=、-=、*=、/=、%=(例:a += b; 等价于 a = a + b; )
- 关系运算符:==、!=、>、<、>=、<=( == 表判断,判断左右两边是否相等)
- 逻辑运算符:
逻辑运算符 名称 运算规则 优先级 ! 非,取反 如果 a 为真,则 !a 为假 高
↓
低& 按位与 a , b 都为真,a & b 才为真 ^ 异或 a , b 有且只有一个为真,a ^ b 才为真 | 按位或 a , b 都为假,a & b 才为假 && 短路与 a,b 都为真,a & b 才为真(a为假时,b不作判断,即短路) || 短路或 a,b 都为假,a & b 才为假(a为真时,b不作判断,即短路) - 条件运算符(三目/元运算符):条件?表达式1:表达式2(条件为 true ,结果为表达式1,反之为表达式2)
运算符的优先级规则:
- ()的优先级最高;
- 单目运算符包括 ! ++ -- +(正) -(负),优先级高
- 算术运算符(先乘除,后加减) > 关系运算符(>、<、>=、<= 的优先级高于 ==、!=) > 逻辑运算符
- 赋值运算符的优先级最低;
//例:获取 1234 中各位上的数字
int ge = 1234 % 10; //个位数
int shi = 1234 / 10 % 10; //十位数
int bai = 1234 /100 % 10; //百位数
int qian = 1234 / 1000; //千位数