论i++与++i
网上看到好多人问i++与++i到底怎么理解,网友给出的答案几乎都是一样的。如下:
i++:先进行计算,然后i自增1
++i:i自增1,然后进行计算
并且课本上给出的解释跟这个也差不多,不过这样记起来既麻烦又容易忘记。那么有没有一种简单的理解技巧呢?答案当然是有了!
可以这样去理解:如果代码里有这样的计算,计算时是跟表达式(例如:i++或++i)进行计算的,与i的值无关,然后呢:
i++就可以理解为先将i的值赋值给表达式,然后i自增1
++i就可以理解为i的值先自增1,然后将i的值赋值给表达式
这样就可以非常清晰的看到i++和++i在整个计算过程中的详细变化了,方便了理解和记忆,i--和--i类似,就不做解释了。
随机推荐
- js将对象转成字符串-支持微信
最近写一个微信项目时用到了 把对象转成字符串,因为我需要把它存在cookie中,碰到了一些问题,在这里分享一下. 要转换的就是这货~ var FBinf = { "workPlacesCod ...
- vue中关于computed的一点理解
computed相当于属性的一个实时计算,如果实时计算里关联了对象,那么当对象的某个值改变的时候,同事会出发实时计算. 例子: <body id="content"> ...
- C#利用QrCode.Net生成二维码(Qr码)
在网上很多应用都是用二维码来分享网址或者其它的信息.尤其在移动领域,二维码更是有很大的应用场景.因为项目的需要,需要在网站中增加一个生成二维码分析网址的功能,在谷歌大幅度抽筋的情况下无奈使用百度.百度 ...
- C#管理IIS中的站点
原文:http://www.knowsky.com/534237.html Microsoft自Windows Vista一起发布了IIS 7.0,这个已经是去年的话题了,随后,由.NET开发的Web ...
- iOS 之URL schemes
添加 URL schemes 步骤: 1.打开info.plist文件. 2.点击 “+ ”号添加,或者在列表上点击鼠标右键,选择 Add Row. 3.选择 URL types. 4.点击三角号展 ...
- Ngui _CD技能特效
using UnityEngine;using System.Collections; public class Skill : MonoBehaviour { public float coldTi ...
- java web移植 遇到Project facet Java version 1.7 is not supported
在移植eclipse项目时,如果遇到 "Project facet Java version 1.7 is not supported." 项目中的jdk1.7不支持.说明项目是其 ...
- ERP行业推荐参考书籍
1 书名:<ERP 理论.方法与实践> 作者: 周玉清等编著 出版社:电子工业出版社 简介:本书全面介绍了ERP的基本原理和处理逻辑,以大量篇幅讨论了ERP的计划功能,特别是主生产计划功能 ...
- XHTML 结构化:使用 XHTML 重构网站
http://www.w3school.com.cn/xhtml/xhtml_structural_01.asp 我们曾经为本节撰写的标题是:"XHTML : 简单的规则,容易的方针.&qu ...
- php缩放gif和png格式透明背景变成黑色的解决方法
在对gif或png格式的图片进行缩放等操作时,原本透明背景的图片最后都变成黑色的,解决办法 $img = imagecreatetruecolor(, ); //2.上色 $color=imageco ...