`
langzixin
  • 浏览: 127732 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

VC环境下自增(++)自减(--)

阅读更多
1、在表达式中和在函数参数中计算结果相同(这一点与Turbo C环境不同);
2、后缀:同表达式中Turbo C的情况相同:先统一取值后依次自增,如:
   int a,i=5;  a=i+++i+++i++; a=15, i=8.
3、前缀:对整型,前两个自增同Turbo C,即依次自增后统一取值,后面的每个自增后即
   取值,如:
   int a, i=5;  a= ++i +(++i)+(++i);  a=22, i=8.
   对实型,每个自增后即取值,如:
   float  a, i=5;  a= ++i +(++i)+(++i);  a=21, i=8.
4、前后缀混合的情况:
   (1) 各有一个的情况:设int i=5; 由于i++*++i应满足交换率与++i*i++相同,规定按后者计算故为36。实验2内容4:int i=5; printf("%d,%d\n", --i, i++*++i ); 前面的—i 规定在++i之后i++之前运算,故为5,
   (2) 其中i++或++i或两者有一个以上的情况:设int i=5; ++i独立自增(++i有两个以上在一起时最左边的连续自增同3、,其余每个自增后取值),连续的i++取值依左边的i确定统一取,而--i或i--(第一输出项)在所有++i后计算,如:
printf("%d\n%d\n",--i,(++i)+(i++)+(i++)+(++i)); 打印6和25
printf("%d\n%d\n",--i,(++i)+(++i)+(++i)+(++i)+(i++)); 打印8和40
   (3) 最后i的值等于原值加总自增次数减自减的次数
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics