关于自增(减)操作的发生时机

关于自增(减)操作的发生时机

第一个例子

 

#include   <iostream>   
  using   namespace   std;   
  int   main()   
  {   
  int   i,j;   
  i=j=3;   
  cout   <<   i++   <<   ","   <<   i   <<   endl;     
  cout   <<   i   <<   endl;   
  cout   <<   ++j   <<   ","   <<   j   <<   endl;   
  cout   <<   j   <<   endl;     
  return   0;   
  }   

第二个例子

   

#include   <iostream>   
  using   namespace   std;   
  int   main()   
  {   
  int   n1,n2;   
  n1=n2=3;   
  n2=n1++,n2++,++n1;   
  cout   <<   "n1="   <<   n1   <<   endl;   
  cout   <<   "n2="   <<   n2   <<   endl;   
  return   0;   
  }   

 

第三个例子

   

#include   <iostream>   
  using   namespace   std;   
  int   main()   
  {   
  int   x=4,y=25,z=2;   
  z=(--y/++x)*z--;   
  cout   <<   "x="   <<   x   <<   endl;   
  cout   <<   "y="   <<   y   <<   endl;   
  cout   <<   "z="   <<   z   <<   endl;   
    
  return   0;   
  }   

 

 

前加(减)是在表达式(或语句)执行之前运行,  
  后加(减)是在表达式(或语句)执行后完成的.  
  语句或','分割的表达式都会使后加(减)起作用了.  
  前加(减)++i优先级高于*/,顺序从右至左,先结合后运算.  
  后加(减)优先级低于*/及=,顺序从左至右,先运算后结合.  
  同一表达式中不影响自身.上面结果是:  
  3,3  
  4  
  4,3  
  4  
  n1   =   5,   n2   =   4,   x   =   5,   y   =   24,   z   =   7  
  语句z=(--y/++x)*z--;分析为:  
  z   =   (((--y)/(++x))*z)--  
  z   =   (24/5)*2   -   1  
  整除   24/5   =   4   再   *   2   =   8   ,   结果减   1   =   7.  
  后减(--)优先级低,运算最后完成.   

 

其实还有一点需要注意的是,编译器的执行顺序.在gcc中是总右往左执行 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用!有问题请及时沟通交流。 2、适用人群:计算机相关专业(如计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网、自动化、电子信息等)在校学生、专业老师或者企业员工下载使用。 3、用途:项目具有较高的学习借鉴价值,不仅适用于小白学习入门进阶。也可作为毕设项目、课程设计、大作业、初期项目立项演示等。 4、如果基础还行,或热爱钻研,亦可在此项目代码基础上进行修改添加,实现其他不同功能。 欢迎下载!欢迎交流学习!不清楚的可以私信问我! 毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip毕设新项目-基于Java开发的智慧养老院信息管理系统源码+数据库(含vue前端源码).zip
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值