*** 作符分类
<1>算术 *** 作符
很显然,算术 *** 作符是进行相关的数学运算时,计算机用到的符号,注意 * 表示乘号, / 表示除号,还要注意的一个点是 % 是取余,例如5%3=2,是用来求余数的,而且要求 % 的两个 *** 作数都必须是整型变量。
<2>移位 *** 作符
移位 *** 作符意思是将一个数的二进制位向左或向右移动一位,可以理解为:如变量a<<1,表示的就是将a的二进制位向右移动了1位,相当于变成了a的2倍,而a>>1则是将a的二进制位向左移动了一位,相当于变成了a的二分之一。此处只是简略的介绍,后期会有相关的移动规则。
<3>单目 *** 作符
可以理解为一个符号有几个 *** 作数就是几目 *** 作符,例如 - (负号)就是一个单目 *** 作符,而 * 就是一个双目 *** 作符。对于单双目 *** 作符的例子在这里就不一一列举了。
<4>位 *** 作符
首先,位 *** 作符是双目 *** 作符,对应的 *** 作数都是整型变量, *** 作的对象是整形 *** 作数的二进制形式,& (按位与)的作用为当两个整型变量的二进制表示形式的对应二进制位都为1,那么结果的二进制相应位置上也为1,若两者有一个为0,那么结果的二进制表示形式的相应二进制位上就为零,我们知道,非零为真,零为假,所以可以概括为:“全真为真,有假即假”。同理, |(按位或)可概括为“有真即真,全假为假”。而 ^ (按位异或)比较特殊,当相应二进制位真假相反,即一个为1,一个为0是,结果为1,当相应二进制为真假相同时,结果为0。
<5>赋值 *** 作符
= 是赋值,如a=b,表示将变量b的值赋给变量a,注意=左边不能是常量,因为常量的值是不可修改的。接下来,像 += 这样的 *** 作符我们给出例子,如a+=b,意思是a=a+b,同理,后面的几种也是相应的意思。
<6>逻辑 *** 作符
&&(逻辑与)||(逻辑或)前者当左右的两个条件都成立时返回1,一旦有一个不成立便返回0,后者是一旦有一个条件成立便返回1,都不成立时返回0。
此外,&&一旦有第一个条件不成立,那么在&&之后的表达式都不再进行计算了,而||一旦第一个条件成立,那么||之后的表达式不再计算。
<6>条件 *** 作符
exp1 ? exp2 : exp3 这是个三目 *** 作符,运算规则是,当exp1条件成立时,exp2的结果是该条语句的结果,当当exp1条件不成立时,exp3的结果是该条语句的结果。
<7>逗号表达式
exp1, exp2, exp3, ...... ,expn(n为正整数),逗号表达式每个逗号之前都是一条语句,在读到逗号表达式时,每个表达式从左到右依次执行,但最后一条语句作为整个逗号表达式的结果。
下标引用、函数调用和结构成员 *** 作符我们以后再讲,以上就是对C语言中常见 *** 作符的一些归类和解释,水平有限,欢迎指正。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)