• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C#系列之算数运算符(四)

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

今天,我将做一个算术运算符++和--的笔记以及一元运算符和二元运算符同时存在怎么计算的笔记

++;分为前加加和后加加,但是最后结果都是+1;

--;分为前减减和后减减,但是最后结果都是-1;

例如:

int num = 10;
num++;
Console.WriteLine(num);
Console.ReadKey();
int num1 = 10;
++num1;
Console.WriteLine(num1);
Console.ReadKey();
int num2 = 10;

其结果为:

区别:其区别表现在表达式中,如果是前加加,则先给这个变量自身加1,然后带上这个加1后的值去参加计算,如果是后加加,则先拿原先的值参与运算,运算完成后,再将自身变量加1.

例如:

int num4 = 10;
int result = 10 + num4++;
Console.WriteLine(num4);
Console.WriteLine(result);
Console.ReadKey();
int num5 = 10;
int Result = 10 + (++num5);
Console.WriteLine(num5);
Console.WriteLine(Result);
Console.ReadKey();

其结果为:

 

知识点:对于像++或者--只需要一个操作数就能完成的计算称之为一元运算符,而像+-*%/对于这些需要两个或者两个以上才能完成计算的操作符称之为二元运算符

重点(一元运算符要高于二元运算符)

如果在一个计算表达式中,既有一元运算符又有二元运算符,首先,先计算一元运算符,然后再从左往右依次运算。

例如:

int a = 5;
int b = a++ + ++a * 2 + --a + a++;
Console.WriteLine(a);
Console.WriteLine(b);
Console.ReadKey();

其结果并不是5和26

而是

运算过程:

int b = a++ + ++a * 2 + --a + a++;

5+14+6+6=31

首先先运算a++,其结果为6,但是是在运算以后加1,所以值为5,因为一元运算符要优先于二元运算符,所以先算++a,其结果为7*2等于14,a的值为7,--a为在运算前减1,所以为6,a的值为6,a++为先运算然后再加1,所以为6,此时,运算完后a的值为7

所以,a的值为7,b的值为31

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C语言中的回调函数发布时间:2022-07-14
下一篇:
C#求链表list中属性的最大值最小值发布时间:2022-07-14
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap