i++ 一定等同于 i=i+1吗?

大家都知道,i++通常情况都是等同于i=i+1,在编译时,clr会自动向上转换

比如说
   int t =1;
   t++;   等同于 t=t+1;  //1 是int,和int型相加,int + int 赋值给int时,编译没有错误

long t= 1;
   t++;   等同于 t=t+1;  //1 是int,和long 型相加,由于有int 向上自动转换成 long,int(这时转换成了long) + long 赋值给long时,编译没有错误

short t=1;
   t++;  不等同于 t=t+1; //1 是int,和short类型相加,由于 short 向上自动转换成 int,short(这时转换成了int + int 赋值给short 时,编译肯定会出现错误!

这里,自动向高级转换时,是t的“值”自动转换了,并非是其类型真的变了!

i++ 和 ++i一样的吗?

答案是否定的,在遇到赋值运算时候,i++是先进行赋值,后进行+操作

而++i是先进行加操作,后进行赋值操作

例如:   int count = 5;

int i = count++;//此时,i=5

i = count;      //此时 i=6

.NET基础之:i++和i=i+1和++i的区别的更多相关文章

  1. Java多线程系列--“基础篇”03之 Thread中start()和run()的区别

    概要 Thread类包含start()和run()方法,它们的区别是什么?本章将对此作出解答.本章内容包括:start() 和 run()的区别说明start() 和 run()的区别示例start( ...

  2. 基础 HTML之目录问题(相对路径和绝对路径区别)

    一.相对路径和绝对路径 相对路径:以引用文件之网页所在位置为参考基础,而建立出的目录路径.因此,当保存于不同目录的网页引用同一个文件时,所使用的路径将不相同,故称之为相对. 绝对路径:以Web站点根目 ...

  3. C#基础复习(1) 之 Struct与Class的区别

    参考资料 [1] 毛星云[<Effective C#>提炼总结] https://zhuanlan.zhihu.com/p/24553860 [2] <C# 捷径教程> [3] ...

  4. 9. Ext基础1 -- Ext中 getDom、get、getCmp的区别

    转自:https://blog.csdn.net/huobing123456789/article/details/7982061 要学习及应用好Ext框架,必须需要理解Html DOM.Ext El ...

  5. 基础(一):SCSI硬盘与IDE硬盘有什么区别

    硬盘接口是硬盘与主机系统间的连接部件,作用是在硬盘缓存和主机内存之间传输数据.不同的硬盘接口决定着硬盘与计算机之间的连接速度,在整个系统中,硬盘接口的优劣直接影响着程序运行快慢和系统性能好坏.从整体的 ...

  6. Python基础学习-Python中最常见括号()、[]、{}的区别

    Python中最常见括号的区别: 在Python语言中最常见的括号有三种,分别是:小括号().中括号[].花括号{}:其作用也不相同,分别用来代表不同的Python基本内置数据类型. Python中的 ...

  7. java多线程系类:基础篇:03Thread中的start()和run()的区别

    这个系类的内容全部来源于http://www.cnblogs.com/skywang12345/p/3479024.html.特别在此声明!!! 概要 Thread类包含start()和run()方法 ...

  8. 【读书笔记《Android游戏编程之从零开始》】11.游戏开发基础(SurfaceView 游戏框架、View 和 SurfaceView 的区别)

    1. SurfaceView 游戏框架实例 实例效果:就是屏幕上的文本跟着点击的地方移动,效果图如下: 步骤: 新建项目“GameSurfaceView”,首先自定义一个类"MySurfac ...

  9. 操作系统基础知识之————单线程(Thread)与多线程的区别

    单线程(Thread)与多线程的区别 (一)首先了解一下cpu: 随着主频(cpu内核工作时钟频率,表示在CPU内数字脉冲信号震荡的速度,等于外频(系统基本时间)乘倍频)的不断攀升,X86构架的硬件逐 ...

  10. (基础篇) php中0与空 Null false的区别

    <?php $test=0; if($test==''){ echo '<br />在php中,0即为空'; //被输出 } if($test===''){ echo '<br ...

随机推荐

  1. 剑指Offer17 二叉树的镜像

    /************************************************************************* > File Name: 17_Mirror ...

  2. 真机调试时提示: could not change executable permissions on the application

    原因:同一个bundle identifier不能重复在两个app中使用: 解决:卸载掉手机上的另一个app即可重新安装.

  3. itunes connect提交app教程

    .打开itunes connect登陆之后,选择Manage Your Apps,再选Add New App: .填写项目相关信息,不知道怎么填的点击问号查看: Bundle ID Suffix需要和 ...

  4. [Wordpress]wp_dropdown_categories() 添加自定义的attribute(属性)

    通过Wordpress wp_dropdown_categories()可以获取到Wordpress中的分类列表,假如需要添加一些Html5属性,如required,在看了这个方法的文档说明,没有参数 ...

  5. IOS 支付宝、微信回调传值给H5网页

    这里用是的苹果原生和JS的交互 .有不明白JavaScriptCore框架的可以去网上搜索下这方面的资料很多废话不多说直接上代码 @protocol JSContextDelegate <JSE ...

  6. 【CSS3】---颜色RGBA及渐变色

    颜色之RGBA RGB是一种色彩标准,是由红(R).绿(G).蓝(B)的变化以及相互叠加来得到各式各样的颜色.RGBA是在RGB的基础上增加了控制alpha透明度的参数. 语法: color:rgba ...

  7. A*算法的实现

    #include<cstdio> #include<cstdlib> #include<cstring> #include<iostream> #inc ...

  8. Java实现邮箱找回密码 --转载

    通过邮件找回密码功能的实现 1.最近开发一个系统,有个需求就是,忘记密码后通过邮箱找回.现在的系统在注册的时候都会强制输入邮箱,其一目的就是 通过邮件绑定找回,可以进行密码找回.通过java发送邮件的 ...

  9. OpenStack 加入新的节点,创建虚拟机失败的问题

    最开始做OpenStack的时候,由于只是为了部署测试用,因此将所有的部分都装在一台单网卡的机器上,费了九牛二虎之力终于部署成功,其中最主要的两块问题出现在以下两个方面: 1:nova.neutron ...

  10. (转)SqlServer中处理每天四亿三千万记录的

    项目背景 这是给某数据中心做的一个项目,项目难度之大令人发指,这个项目真正的让我感觉到了,商场如战场,而我只是其中的一个小兵,太多的战术,太多的高层之间的较量,太多的内幕了.具体这个项目的情况,我有空 ...