当前位置:  编程技术>.net/c#/asp.net

C#中38个常用运算符的优先级的划分和理解

    来源: 互联网  发布时间:2014-10-14

    本文导语:  在C#中,一共有38个常用的运用符,根据它们所执行运算的特点和它们的优先级,为了便于记忆,我将它们归为七个等级:1、单元运算符和括号。2、常规算术运算符。3、位移运算符。4、比较运算符。5、逻辑运算符。6、各种...

在C#中,一共有38个常用的运用符,根据它们所执行运算的特点和它们的优先级,为了便于记忆,我将它们归为七个等级:1、单元运算符和括号。2、常规算术运算符。3、位移运算符。4、比较运算符。5、逻辑运算符。6、各种赋值运算符。7、右位(后缀)单元运算符。

1、在这一级中,有++、--(做为前缀)、()、+、-(做为单元运算符)、!、~。这一级中都是单元运算符,除了其中那一对特殊的具有改变任何运算优先级的括号。这此可以看出,在定义表达式中,那些单元运算符的优先级是很高的,可能是因为它们都直接作用于操作数吧。只有两个单元运算符的优先级不在第一级中,它们因为特殊的原因出现在了后面。

2、在常规算术运算符中,有我们经常使用的*、/、%、+、-,因为他们使用得较多,所以也排在较高的位置。

3、这一级是两个特殊的位操作符,>,它们是所有二元操作符中除常规运算符外优先级最高的了,可能是因为与比较运算符、逻辑运算符比起来,这一组操作符进行的还是数值的计算。

4、比较运算符,包括、=、==、!=,一共六个,这里有一个特点,就小于优先于大于。

5、逻辑运算符,逻辑运算符原本有四种,但用于单元的“非”运算符排在了前面,所以这里面就只有&、^、|,再加上两个补充的用于提高代码效率的运算符&&、||,共有五个。

6、赋值运算符,这一级最多,几乎前面出现过的二元运算符,在这里加上个“=”号就成为一个赋值运算符。首先当然最基本的赋值运算符“=”;然后是常规算术运算符演变来的“*=、/=、%=、+=、-=”,它们的顺序和常规算术符的顺序一样;然后是位移运算符和逻辑运算符,也按它们演变前的顺序排列,为“=、&=、^=、|=”。因为比较运算符所产生的结果的数据类型和它的运算数的数据类型不同,所以它们没有相应的赋值运算符。

7、最后一级,就是那两个最后的单元运算符后缀版的++、--。它们的出现就是为了做为那两个前缀版的==、--的补充(那两个的优先级太高了,人们需要两个优先级不那么高的),以方便设计表达式,所以这两个的优先级当然要排在最后了。

那么,这38个操作符的优先级顺序就可以写成如下了:(无论是横向还是竖向,越靠前优先级越高)
第一级:++、--(做为前缀)、()、+、-(做为单元运算符时)、!、~。
第二级:*、/、%、+、-。
第三级:。
第四级:、=、==、!=。
第五级:&、^、|、&&、||。
第六级:=、*=、/=、%=、+=、-=、=、&=、^=、|=。
第七级:++、--(做为后缀)。

这只我自己在学C#中的一些总结,其中对于各级的划分方式、各操作符的优先级的理解并不见得正确,只是自己的看法,拿出来与大家分享。

    
 
 

您可能感兴趣的文章:

  • C#常用小数取整数的示例代码
  • C#常用自定义函数小结
  • C#实现快捷键的几种常用方法汇总
  • C#启动外部程序的几种常用方法汇总
  • 常用正则 常用的C#正则表达式
  • C# 常用日期时间函数(老用不熟)
  • C#常用GDI+文字操作汇总
  • c# 日期与时间函数(都是常用的,错过了就后悔永远的)
  • C#常用正则大全分享
  • c# DateTime常用操作实例(datetime计算时间差)
  • C#常用数据格式转换的方法汇总
  • 比较不错的C#中的常用的正则表达式
  • C#常用的数据格式转换汇总
  • C# DateTime常用方法汇总
  • C#中一些字符串操作的常用用法
  • C# DatagridView常用操作汇总
  • C#窗体间通讯的几种常用处理方法总结
  • c# 实现MD5,SHA1,SHA256,SHA512等常用加密算法源代码
  • C# 连接SQL数据库的方法及常用连接字符串
  • C#字符串的常用操作工具类代码分享
  • python基础教程之常用运算符
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Linux常用命令介绍:更改所属用户群组或档案属性
  • 求常用操作常用命令
  • redhat/centos 常用信息查看命令整理
  • 100分求:linux常用命令和C语言常用函数帮助文档
  • 二叉树常用算法(求总节点个数和叶子节点个数)
  • 调查:兄弟们,你们常用linux开发什么软件?哪类软件?常用什么开发工具?
  • Windows7 常用使用技巧
  • 常用的C语言算法库 libcstl
  • c/c++ 常用转义字符
  • 最常用的Linux/Unix系统版本是什么版本啊?
  • 基于Key-Value的NOSQL数据库Redis的数据结构及常用相关命令介绍
  • linux 内核空间如何获取当前时间(常用格式)
  • linux命令大全详细分类介绍及常用linux命令文档手册下载
  • 高分求常用linux或者unix指令
  • ORACLE数据库常用字段数据类型介绍
  • 我要装个Linux想在该系统下做C++开发,我想和道常用的是那个版本的系统??
  • ftp协议介绍及ftp常用的上传下载等操作命令使用方法
  • 常用数据结构库 sundial
  • mongodb 数据库常用命令使用实例
  • C++常用类库 fcppt
  • Docker 基础用法和常用命令及选项介绍
  • C语言常用工具包 libscl


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3