求助 c++问题
求助c++问题for(i=3;i>0;i--)cout<<i;和for(i=3;i>0;---i)cout<<i;输出结果有什么不同?...
求助 c++问题for(i=3;i>0;i--)
cout<<i;
和
for(i=3;i>0;---i)
cout<<i;
输出结果有什么不同? 展开
cout<<i;
和
for(i=3;i>0;---i)
cout<<i;
输出结果有什么不同? 展开
1个回答
展开全部
后面一个 多打了一个减号.
for(i=3;i>0;i--)
cout<<i;
和
for(i=3;i>0;--i)
cout<<i;
从功能上来看, i--是先取值 再自减. --i是先自减再取值. 但由于是独立语句,所以没有任何影响.
即, 二者功能完全相同.
从效率上来说, 理论上i--会产生一个临时副本, 先取值再赋值. 而--i则直接减,然后取值. 这样--i应该比i--效率略高.
但实际运行上影响微乎其微. 尤其现在大多数编译器,在发现单独的i--时,都直接优化成--i. 所以这方面也没什么区别.
综上,二者可以随意使用,无差别.
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询