您的位置:首页 > 编程语言 > C语言/C++

C语言操作符(总结)

2018-03-24 14:40 417 查看

操作符 分类:

算术操作符
移位操作符
位操作符
赋值操作符
单目操作符
关系操作符
逻辑操作符
条件操作符
逗号操作符
下标引用、函数调用和结构成员


算术操作符

操作符功能
+
-
*
/
%求余数(取模)

1.加、减、乘很简单,和平常数学中运算规则相同。

2.’/’(除)这个操作符需要注意的是:除的时候如果’/’两边只要有(一个或两个)浮点数,采用的是浮点型除法,若’/’两边都是整型,则采用的是整型除法。

3.’%’这个操作符两边的数只能是整数,它返回的是整除之后的余数

移位操作符

操作符功能
<<左移操作符
>>右移操作符

1.移位操作符作用的对象是一个数的补;

2.对于左移:左边抛弃,右边补0;

3.对于右移:右边抛弃,左边补原来的符号位(采用算术移位);

4.对于’>>’操作符,分为两种移位规则:一种逻辑移位,另一种是算术移位

a.逻辑移位规则是右边抛弃,左边最高位直接补0,不考虑之前数的符号位。

b.算术移位规则是右边抛弃,左边最高位补和之前数相同的符号位。而目前编译器通常采用的是算术移位规则。

5.但这里需要注意,对一个数移位操作完成后,当前的数不会改变的,除非把它赋值给另外一个变量。

int main()
{
int p=0,q=0,n=2;
p=n<<1;
printf("%d",p);
q=n>>1;
printf("%d",q);
}


此时输出的结果为:p=4,q=1;左移操作相当于给之前的数乘2,右移操作相当于给之前的数除2;

位操作符

操作符功能
&按位与
按位或
^按位异或

1.同样这里位操作符作用的对象也是一个数的补码,对于’&’

2.对于’&’,补码对应位置的值都为1,结果为1,否则为0;对于’|’,补码对应位置有1,

3.它们三个的操作数必须为整数。

(未完待续)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: