精华内容
下载资源
问答
  • C语言运算符优先级别次序表.pdf )
  • C语言运算符优先级 之 快速记忆

    千次阅读 2018-10-07 10:09:36
    C语言运算符优先级 之 快速记忆 先摘录谭浩强《C程序设计》对运算符优先级的两点说明: 1. 同一优先级的运算符,运算次序由结合方向来决定。  例如:  a) * 与 / 具有相同的优先级别,其结合方向为自左向右,...

    C语言运算符优先级 之 快速记忆

    先摘录谭浩强《C程序设计》对运算符优先级的两点说明:

    1. 同一优先级的运算符,运算次序由结合方向来决定。

        例如:

        a) * 与 / 具有相同的优先级别,其结合方向为自左向右,因此3 * 5 / 4的运算次序是先乘后除;

        b) - 和 ++ 为同一优先级,结合方向为自右向左,因此 - i ++ 相当于 - ( i ++ )。

    2. 从上述表中可以大致归纳出各类运算符优先级:

        初等运行符->单目运算符->算术运算符->关系运算符->逻辑运算符->条件运算符->赋值运算符->逗号运算符

     

    经过分析总结,编成顺口溜6句以助记忆:

     

     

    初等单目一二级, // 初等运算符和单目运算符分别是第1、2优先级

    乘除求余加减移, // 这句里面的运算符全归为算术运算符,移表示移位

    关系等于不等于, // 关系运算符(<  <=  >  >=)

    按位与来异或或, // 位运算符优先级顺序: & -> ^ -> |

    逻辑与或条件弱, // 逻辑运算符优先级顺序: && -> ||,后面跟着优先级比较低(弱)的条件运算符

    赋值逗号一点破。 // 赋值,逗号最低

     

    优先级

    运算符

    名称或含义

    使用形式

    结合方向

    说明

    1

    []

    数组下标

    数组名[常量表达式]

    左到右

     

    ()

    圆括号

    (表达式)/函数名(形参表)

     

    .

    成员选择(对象)

    对象.成员名

     

    ->

    成员选择(指针)

    对象指针->成员名

     

    2

    -

    负号运算符

    -表达式

    右到左

    单目运算符

    (类型)

    强制类型转换

    (数据类型)表达式

     

    ++

    自增运算符

    ++变量名/变量名++

    单目运算符

    --

    自减运算符

    --变量名/变量名--

    单目运算符

    *

    取值运算符

    *指针变量

    单目运算符

    &

    取地址运算符

    &变量名

    单目运算符

    !

    逻辑非运算符

    !表达式

    单目运算符

    ~

    按位取反运算符

    ~表达式

    单目运算符

    sizeof

    长度运算符

    sizeof(表达式)

     

    3

    /

    表达式/表达式

    左到右

    双目运算符

    *

    表达式*表达式

    双目运算符

    %

    余数(取模)

    整型表达式/整型表达式

    双目运算符

    4

    +

    表达式+表达式

    左到右

    双目运算符

    -

    表达式-表达式

    双目运算符

    5

    << 

    左移

    变量<<表达式

    左到右

    双目运算符

    >> 

    右移

    变量>>表达式

    双目运算符

    6

    大于

    表达式>表达式

    左到右

    双目运算符

    >=

    大于等于

    表达式>=表达式

    双目运算符

    小于

    表达式<表达式

    双目运算符

    <=

    小于等于

    表达式<=表达式

    双目运算符

    7

    ==

    等于

    表达式==表达式

    左到右

    双目运算符

    !=

    不等于

    表达式!= 表达式

    双目运算符

    8

    &

    按位与

    表达式&表达式

    左到右

    双目运算符

    9

    ^

    按位异或

    表达式^表达式

    左到右

    双目运算符

    10

    |

    按位或

    表达式|表达式

    左到右

    双目运算符

    11

    &&

    逻辑与

    表达式&&表达式

    左到右

    双目运算符

    12

    ||

    逻辑或

    表达式||表达式

    左到右

    双目运算符

    13

    ?:

    条件运算符

    表达式1? 表达式2: 表达式3

    右到左

    三目运算符

    14

    =

    赋值运算符

    变量=表达式

    右到左

     

    /=

    除后赋值

    变量/=表达式

     

    *=

    乘后赋值

    变量*=表达式

     

    %=

    取模后赋值

    变量%=表达式

     

    +=

    加后赋值

    变量+=表达式

     

    -=

    减后赋值

    变量-=表达式

     

    <<=

    左移后赋值

    变量<<=表达式

     

    >>=

    右移后赋值

    变量>>=表达式

     

    &=

    按位与后赋值

    变量&=表达式

     

    ^=

    按位异或后赋值

    变量^=表达式

     

    |=

    按位或后赋值

    变量|=表达式

     

    15

    ,

    逗号运算符

    表达式,表达式,…

    左到右

    从左向右顺序运算

     

    展开全文
  • c语言中逻辑运算符及其优先次序

    千次阅读 2017-12-23 13:53:12
    && 逻辑与 a&&b 如果a和b都为真,则结果为真,否者为假。 || 逻辑或 a||b 如果a和b有一个以上为真,则结果为真,否则都为假时。 ...a 如果a为假,则为真,如果a为真,则为假..."是一目(元)运算符,只要求有一个运

    && 逻辑与 a&&b 如果a和b都为真,则结果为真,否者为假。

    || 逻辑或 a||b 如果a和b有一个以上为真,则结果为真,否则都为假时。

    逻辑非 !a 如果a为假,则为真,如果a为真,则为假。


    “&&”和“||”是双目(元)运算符,它要求有两个运算对象(操作数),如(a>b)&&(x>y),(a>b)|| (x>y)。

    "!"是一目(元)运算符,只要求有一个运算对象,如!(a>b).

    展开全文
  • c语言运算符及表达式

    2018-11-07 23:10:17
    优先次序 !(非)>算数运算符>关系运算符>||和&amp;&amp;>赋值运算符;** 关系运算符 结合方向:从左向右 优先级相同(高) 优先级相同(低) &lt; == &lt;= != &gt; &gt;...

    优先次序
    !(非)>算数运算符>关系运算符>||和&&>赋值运算符;**

    关系运算符

    结合方向:从左向右

    优先级相同(高) 优先级相同(低)
    < ==
    <= !=
    >
    >=

    关系表达式:

    用关糸运算符将两个数值或数值表达式连接起来的式子
    关系表达式的值是一个逻辑值,真值为1,假值为0

    例:
    d=a>b,若a>b为真,则d为1
    f=a﹥b﹥c,自左向右运算,a﹥b为1,1﹥c为0,则f为0

    逻辑运算符

    结合方向:从左向右
    !(非)>&&(与)>||(或)

    逻辑表达式

    c语言编译系统在表示逻辑运算结果时,用数值1代表真,用0代表假
    但在判断一个量是否为“真”时,以0代表假,以非0代表真,即将一个非零的数值认作为“真”。
    在逻辑表达式的求解中,并不是所有逻辑运算符都被执行,只是在必须执行下一个逻辑运算符才能求出表达式的解时,才执行该运算符。其后的值保持原值。

    已学过的运算符优先级

    运算符 结合律
    ( )、【】 从左至右
    ++、–、~、&(取地址符)、! 从右至左
    *、/、% 从左至右
    +、- 从左至右
    <<、>> 从左至右
    关系运算符
    & 从左至右
    ^ 从左至右
    l 从左至右
    && 从左至右
    ll 从左至右
    ?: 从右至左
    ,逗号运算符 从左至右
    展开全文
  • 1.最常用的的算术运算符  正号运算符(+)、负号运算符(-)、乘法运算符(*)...3.关系运算符及其优先次序 C语言提供了六种关系预算符: 小于()、小于或等于(=) 这四种运算符优先级相同 等于(==)、不等于(!=) 这两种运

    1.最常用的的算术运算符

     正号运算符(+)、负号运算符(-)、乘法运算符(*)、除法运算符(/)、求余运算符(%)、加法运算符(+)、减法运算符(-)。


    2.自增自减运算符

    自增运算符(++)、自减运算符(--)。


    3.关系运算符及其优先次序

    C语言提供了六种关系预算符:

    小于(<) 、大于(>)、小于或等于(<=)、大于或等于(>=)   这四种运算符优先级相同

    等于(==)、不等于(!=) 这两种运算符优先级相同,低于上面的四种运算符

    关系运算符优先级低于算术运算符,高于赋值运算符


    4.赋值运算符

    简单赋值(=),复合算术赋值(+=,-=,*=,/=,%=), 和复合位运算符


    5、逻辑运算符
     用于逻辑运算。包括与(&&)、或(||)、非(!)三种。

    非运算符高于算术运算符

    与运算符和或运算符低于关系运算符


    6、条件运算符
     用于条件求值,(?, :)。


    7、逗号运算符。


    8、指针运算符
     用于取内容(*)和取地址(&)运算。


    9、特殊运算符:包括括号()、下表运算符[]、指向结构体成员运算符->、结构体成员运算符.  


    各运算符的优先级:

    初等运算符  >  单目运算符  > 算术运算符(先乘除,后加减) > 关系运算符 > 逻辑运算符(不包括!) > 条件运算符 > 赋值运算符 > 逗号运算符

    展开全文
  • 论坛和博客上常常看到关于C语言运算符的迷惑,甚至是错误的解读。这样的迷惑或解读大都发生在...优先级决定表达式中各种不同的运算符起作用的优先次序,而结合性则在相邻的运算符的具有同等优先级时,决定表达式
  • 论坛和博客上常常看到关于C语言运算符的迷惑,甚至是错误的解读。这样的迷惑或解读大都发生在表达式中存在...优先级决定表达式中各种不同的运算符起作用的优先次序,而结合性则在相邻的运算符的具有同等优先级时,决
  • 第3章 关系运算符和位运算符本节主要内容介绍 3.5.5 关系运算符和关系表达式 3.5.6 逻辑运算符和...关系运算符及其优先次序(小于(小于或等于> (大于>= (大于或等于)== (等于!= (不等于)说明关系运算符的优先级低于算
  • 在表达式求值时,先按运算符优先级别高低次序执行,例如先乘除后加减。C语言还规定了各种运算符的结合方向,众所周知的是,算术运算符的结合方式为“自左向右”,即先左后右,因此b先与减号结合,执行a-b的运算,...
  • C语言 | 逻辑运算符

    2021-03-29 08:58:36
    C语言逻辑运算符优先次序 有3种逻辑运算符:与(AND),或(OR),非(NOT)。在basic和Pascal等语言可以在程序中直接用and,or,not作为逻辑运算符。在C语言中不能再程序中直接使用,而是用其他符号代替。 !(非)...
  • c语言运算符的优先级问题 同一优先级的运算符,运算次序由结合方向决定。例如与/具有相同的优先级别,其结合方向为自左向右,因此35/4的运算次序是想成后除。-和++位同意优先级,结合方向为自左向右,一次-i++...
  • C语言 关系运算符与关系表达式

    千次阅读 2018-12-19 11:04:54
    知识补丁01:关系运算符及其优先次序 C语言提供6种关系运算符: &amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;(小于), &amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;=(小于或等于), (大于), =(大于或...
  • 首先要明白的是:优先级决定表达式中各种不同的运算符起作用的优先次序;而结合性则在相邻的运算符的具有同等优先级时,决定表达式的结合方向。 [赋值运算符“=”] 对于赋值运算符来说,常会用到的是连续赋值的...
  • 本文约1700字,主要讲了关系运算符和关系表达式,逻辑运算符和逻辑...一、关系运算符及其优先次序C语言中有以下关系运算符: (1) < 小于 (2) <= 小于或等于 (3) > 大于 (4) >= 大于或等于...
  • 说说C语言运算符的“优先级”与“结合性” 总结一下,本文主要阐述了以下几点: (1)优先级决定表达式中各种不同的运算符起作用的优先次序,而结合性则在相邻的两个运算符的具有同等优先级时,决定表达式的结合...
  • 第五章 选择结构程序设计 5.1关系运算符号和关系...2.关系运算符和它们的优先次序 >, >= , 优先级高于==, != 3.关系运算符的优先级低于算术运算符。 4.关系运算符的优先级高于赋值运算符。 5
  • C运算符优先次序 经常忘了->.和&*!谁高谁低,汗一个先!所以还是贴在这里叮嘱自己天天背N+X次! 表达式 优先级
  • C语言学习

    2019-09-29 15:59:34
    两个整数的四则运算(包括自定义函数,清屏函数,while循环,if语句,关系运算符及其优先次序,逻辑运算符及其优先次序) #include<stdio.h> #include<stdlib.h> int add(int a,int b); int minus(int a...
  • 第二章C语言基础.ppt

    2020-02-25 00:37:13
    学习运算符应注意 运算符功能 与运算量关系 要求运算量个数 要求运算量类型 运算符优先级别 在一个表达式中如果有多个运算符时则计算是有先后次序的这种计算的先后次序称为相应运算符的优先级 结合方向 当一个运算...
  • 最近看QEMU代码的机会比较多,发现里面用了大量宏定义,有必要学习一下。...大多数情况下,这个结论是正确的,但如果外层的宏展开后有 '#' 或 "##" 运算符操作,则会优先从该层展开,这种情况下,在宏
  • 关系运算符和表达式 关系运算符:在程序中经常...复习运算符优先次序…… 关系运算符及其优先次序C语言中有以下关系运算符: 1) < 小于 2) <= 小于或等于 3) > 大于 4) >= 大于或等于 5)...
  • C语言中的语句.ppt

    2020-10-30 08:58:09
    关系运算符及其优先次序 (小于) 小于或等于 > 大于 >= 大于或等于 == 等于 =不等于 优先级相同高 优先级相同低 算术运算符>关系运算符>赋值运算符 关系运算符的结果只有0和1两种即为逻辑值 选择结构程序设计 逻辑...
  • 谭浩强C语言-05

    2012-12-02 16:19:00
    5 分支结构程序...... 15.1.1 关系运算符及其优先次序... 15.1.2 关系表达式... 15.2 逻辑运算符和表达式... 25.2.1 逻辑运算符极其优先次序... 25.2.2 逻辑运算的值... 35.2.3 逻辑表达式... 35.3...
  • C语言期末考试(1).pdf

    2020-09-03 15:38:54
    语句 C语言中 , 以下几种运算符优先次序 ) 的排列是正确的 . A. 由高到低为 : 算术运算符 , 关系运算符 ,||, 赋值运算符 B. 由高到低为 : 算术运算符 , 关系运算符 , 赋值运算符 ,|| C. 由高到低为 , 算术运算符 ,...

空空如也

空空如也

1 2 3 4 5
收藏数 99
精华内容 39
关键字:

c语言运算符优先次序

c语言 订阅