总结——C语言操作符
一、算术操作符。
算术标识符:
+ (加法运算符)
- (加法运算符)
* (加法运算符)
/ (加法运算符)
% (加法运算符) //*只能用于整型*
二、移位操作符。
移位操作符有两种:
>>(右移操作符)
<<(左移操作符)
◣右移操作时分为两种情况:算术右移、逻辑移位。
●算术右移情况指的是:二进制数有正负之分,补位时要注意符号位;
●逻辑移位情况指的是:不需要考虑符号产生的问题,直接补0即可。
这里需要特别注意:
1、移位操作符不能直接赋值改变变量。如果需要改变变量需要这样输入:a>>=1;
2、左移操作相当于/2; 右移操作相当于*2。
三、位操作符。
位操作符包括: (操作符操作的必须是整数)
&(按位与)
|(按位或)
^(按位异或)
四、逻辑操作符。
&&(逻辑与运算符)
||(逻辑或运算符)
!(逻辑非运算符)
五、赋值操作符。
赋值操作符:
=、+=、-=、*=、、=、%=、>>=、<<=、&=、^=等。
◣注意在连续赋值时,应从右往左赋值,例如:
a=x=y+1;输出时a的值就应是y+1。
六、单目操作符。
单目操作符有(自右至左):
!(逻辑反/非运算符)
&(取地址运算符)
sizeof(长度运算符)
~(按位取反运算符)
++(自增运算符)
--(自减运算符)
-(负号运算符)
*(指针运算符)
类型(类型转换运算符)
*◣需要注意的是:
1、&是取地址符,%p打印地址。
2、sizeof()是操作符,不是函数!
3、++的前置和后置。
4、**在这里是间接访问操作符,主要和指针相关。
5、(类型)为强制类型转换操作符,例如强制将浮点型数转化成整型数
七、关系操作符。
关系操作符主要是:
==(等于运算符)
!=(不等于运算符)
>=(大于等于)
<=(小于等于)
◣主要出现在条件的比较判断上,如:if语句、for循环等。
八、条件操作符。
1、exp1 ? exp2 : exp3 (三目运算符,自右至左)
2、exp1 , exp2 , exp3(逗号运算符)
◣逗号条件句的运算规则是从左往右依次运算,其结果是最后一个表达式的结果。
九、其他操作符。
1、下标引用操作符 [ ] :多见于数组。例如:arr[2]。(特别注意:arr[2]与*(arr+2)是等价的。)
2、函数调用操作符 ( ) :这个操作符十分常见,不做过多解释
3、结构成员访问操作符 ·和 -> :多见于结构体中。