C语言——操作符大全

C语言中的操作符整理

(一)算术操作符

(+)(-)(*)(/)(%)
(1)%操作符的两个操作数必须为整数,返回整除之后的余数,余数也为整数。
(2)除%以外的运算符的操作数都可以是任何算术类型。
(3)对于/操作符,两个实数相除的结果是双精度实数,两个整数相除的结果是整数。
(二)关系操作符——6种

1____> (大于)
2____>=(大于等于)
3____<(小于)
4____<=(小于等于)
5____==(等于)
6____!=(不等于)
优先级比较:
前四个(>,>=,<,<=)的优先级相同,后两个的优先级相同,但前者比后者优先级高。
关系操作符的应用——关系表达式

·表达式的值是逻辑值,非真即假——0为假,非0为真。
注意!!!不要将 == (等于符号)和 = (赋值操作符)写错。

(三)位操作符

应用二进制的思想理解,数值在内存中以二进制补码的形式存在。
正数的补码为原码,负数的补码为:符号位不变,原码取反加一。

&(按位与)——全1为1,否则为0
|(按位或)——有1为1,否则为0
^(按位异或)——相同为0,不同为1
注意:位操作符的操作数都为整数。

举例代码如下:

 int a = 1;
 int b = 2;
 int c = a & b;
 int d = a | b;
 int e = a ^ b;
 printf("c = %d\nd = %d\ne = %d\n", c, d, e);
 
   //        a——00000000000000000000000000000001
   //        b——00000000000000000000000000000010
   //c = a & b——00000000000000000000000000000000——0
   //d = a | b——00000000000000000000000000000011——3 
   //e = a ^ b——00000000000000000000000000000011——3

运行结果如下:
C语言——操作符大全_第1张图片
(四)移位操作符

应用二进制的思想理解,数值在内存中以二进制补码的形式存在。
正数的补码为原码,负数的补码为:符号位不变,原码取反加一。
(<<) 左移操作符
(>>) 右移操作符

!!!

注意:移位数不能为负数。

(1)左移操作符
移位规则:左边抛弃,右边补0

 int a = 10;
 int b = a << 1;
 printf("a = %d\nb = %d\n&#

你可能感兴趣的:(c,c语言基础,操作符)