设为首页
收藏本站
开启辅助访问
切换到窄版
请
登录
后使用快捷导航
没有帐号?
立即注册
用户名
Email
自动登录
找回密码
密码
登录
立即注册
快捷导航
首页
开放免费注册
搜索
搜索
热搜:
活动
交友
discuz
本版
文章
帖子
群组
用户
仓酷云
»
社区
›
程序开发 Program
›
ASP.NET网页编程
›
ASP.NET网页编程之专家详解:庞大表达式的实行步骤 ...
返回列表
查看:
577
|
回复:
8
[学习教程]
ASP.NET网页编程之专家详解:庞大表达式的实行步骤
[复制链接]
金色的骷髅
该用户已被删除
电梯直达
楼主
发表于 2015-1-16 22:49:57
|
只看该作者
|
倒序浏览
|
阅读模式
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要
登录
才可以下载或查看,没有帐号?
立即注册
x
兄弟们,想来你们都看过了昨天的比赛了。我现在的痛苦状跟当时应该差不多。希望本版.net老师不吝赐教,为小弟这一批迷途的羊羔指一条阳光之道!您也知道:学习技术如果只有一个人摸索,那是一件多么痛苦的事情!还有,如果万辛能得名师或长者指点,那又是多么一件幸福和快乐的事情!详解|实行 克日在CSDN上闲逛的时分,注重到一个帖子:
((*strDest++=*strSrc++)!= );哪儿先辈能够注释下内里详细实行的步骤呢?
关于如许的表达式,我们一般会有如许三种意见:
1.这类写法不仅没有毛病(固然也没有BUG),并且写法松散。
2.这类写法固然没有毛病,可是不敷直不雅,了解起来有点贫苦,大概还会招致了解毛病。
3.这类写法中存在不决义的中央,实行了局多是毛病的。
大略来看,这三种说法都有点事理。我登时有了寻根究底的乐趣,想对这个成绩举行一次深切的剖析。关于这类组合表达式,在剖析的时分我们应当捉住两个关头的观点:优先级(Precedence)和联系关系性(Associativity)。
1.优先级(Precedence)。优先级决意了那些表达式的值先被评价,那些表达式的值后被评价。一般情形下,优先级高的表达式的值先被评价出来后,然后用评价的了局再往评价那些优先级低的表达式。以是假如我们将优先级弄反了,评价出来的了局是毛病的。
2.(Associativity)。关于二目表达式,联系关系性决意了右边的表达式仍是右侧的表达式先被评价,先被评价出来的了局再用来评价别的的表达式。
再捉住这两个关头的同时,我们还应当分清甚么是表达式的值,甚么是变量的值。我们在评价表达式的时分,我们感乐趣的是表达式的值,而不是组成表达式的某些变量的值。在良多情形下,表达式的值和某些变量的值是分歧的,以是我们很简单搅浑表达式的值和变量的值。要晓得,在有些情形下,表达式的值其实不和某些变量的值不异。
有了下面的实际来武装我们,对表达式的剖析就显得熟能生巧了:
1.很分明,下面的表达式是一个组合表达式。组合表达式由子表达式构成,子表达式又多是组合表达式,如许就构成了一个树状的数据布局。对表达式的评价就相似于对树结点的遍历。起首我们应当注重到"()"操纵符,它具有最高的优先级,以是从全体来看,全部表达式应当是个"!="操纵。"!="右边又是一个组合表达式,而右侧是一个常量"