zoukankan      html  css  js  c++  java
  • 运算符的结合性

    一个多运算对象的表达式运算时的前后顺序是先看优先级,高优先级先计算,低优先级后计算!在优先级相同的情况下,要看结合性,左结合性的运算符由左向右运算,右结合的运算符由右向左运算!
    C语言中具有右结合性的运算符包括所在单目运算符以及赋值运算符(=)和条件运算符。其它都是左结合性!
    例如:
    表达式a=b=c+d+e*f
    式中*号优先级最高,所以首先计算e*f,然后两个+号涉及的三个对象c、d、(e*f)的计算顺序则是左结合,即先计算c+d,然后再计算(c+d)+(e*f)!
    因为赋值运算符=的优先级低于算术运算符,所以之后再计算:
    a=b=(c+d+e*f),而又因为=的结合性是由右向左,所以接下来再计算:
    b=(c+d+e*f),最后才计算a=(b=(c+d+e*f))!!!

    -----------------------------------------------------------------
    using System.Linq.Expressions;
    
    namespace ConsoleApplication1
    {
        class Program
        {
            static void Main(string[] args)
            {
                Expression<del> myET = x => x * x;
            }
        }
    }

    => 运算符具有与赋值运算符 (=) 相同的优先级,并且是右结合运算符。
  • 相关阅读:
    函数 out 传值 分割
    函数
    特殊集合
    集合
    数组

    穷举
    循环
    mac 软件安装
    实用信息查询接口
  • 原文地址:https://www.cnblogs.com/xushining/p/3685421.html
Copyright © 2011-2022 走看看