C语言中的所有运算符用法及总结

设定:int X=20,Y=10;

1、算术运算符

C语言中的所有运算符用法及总结_第1张图片
注:自增和自减运算符只能用于变量,不可用于常量或表达式。另,++X与X++是不同的(–亦同)。以语句a[x]=100;为例:
a[X++]=100;执行之后得到:a[20]== 100、X== 21。//即,先执行该语句,X再自加1。
a[++X]=100;执行之后得到:X== 21、a[21]== 100。//即,X先自加1,再执行该语句。

再注:关于 '/ '运算符,两个实数相除,得到的是一个双精度实数;两个整数相除,结果为整数,舍弃小数部分。但是如果两个数中有一个为负数,舍入的方向是不固定的。如 -5/3,有的系统结果是 -1,有的是 -2。但多数C编译系统采取“向零取整”的方法,即取整后向零靠拢。

2、关系运算符

C语言中的所有运算符用法及总结_第2张图片

3、逻辑运算符

C语言中的所有运算符用法及总结_第3张图片
注:C语言一般0为假,非0为真
注:关于||运算符,如果左边的为真,则右边的表达式就不会被执行了,比如 x=y=1, t=++x||++y,的到的结果是t=1,x=2,y=1。因为++x为真,所以无论++y结果如何,表达式++x||++y的结果都为真。

设定: A=5== 00000101;
    B=10== 00001011;

4、赋值运算符

注:第三行 C-=A 应该是相当于 C=C-A,另第二行 多了一个 x
感谢 @文某风中编程 的提醒
C语言中的所有运算符用法及总结_第4张图片

5、位运算符

C语言中的所有运算符用法及总结_第5张图片
注:左移运算符左移一位相当于乘二,其效率比乘以2的效率高。左移其右边自动补零,右移其左边补符号位

5、其他运算符

C语言中的所有运算符用法及总结_第6张图片

6、补充

  • 求字节数运算符:sizeof
  • 强制类型转换运算符:(类型)
  • 下标运算符:[ ]
  • 函数调用运算符:( )

7、优先级简记

初等运算符(() [] -> .) > 单目运算符 > 算术运算符 > 关系运算符 >( && > ||)> 条件运算符 > 赋值运算符 > 逗号运算符

8、 一览表

在这里插入图片描述

你可能感兴趣的:(C语言,C语言,运算符)