在C++里面imazing使用教程++i 还是i++比较好

++i与i++在for循环中的区别【c++吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:300,503贴子:
++i与i++在for循环中的区别收藏
#include&iostream.h&void main(){ &&&& for(int i=1;i&8;i++)&&&& cout&&i&&' ';} 结果是:1 2 3 4 5 6 7如果把for 里的i++换成++i,结果一样。。 有人能告诉我二者有什么区别吗,,最好有例子
找c++?来博为峰学C++开发,C++开发课程,免费训练营火热开启中!找c++?来这里学C++开发,抢!!!C++开发课程试听名额,总监名师主讲.
++i是先对i进行增1再参加运算,而i++是先参加运算再增1#include&&& &iostream.h&&&&&& void&&& main()&&&&& {&&&&&&&&& int&&& i=3,j=3;&&&&&&&&& cout&&++i;&&&&&&&&&&&&& //OUT:&&& 4&&&&&&&&& cout&&j++;&&&&&&&&&&&&& //OUT:&&& 3&&&&&&&&& cout&&i;&&&&&&&&&&&&&&&&& //OUT:&&& 4;&&&&&&&&& cout&&j;&&&&&&&&&&&&&&&&& //OUT:&&& 4;&&&&& }&&&
++i是现加一再取值,i++是先取值再加一。取值取的是这个表达式的值,加一是变量i加一
在for中第二个分号后面的没有区别。
谢谢2、3、4楼,,知道了
啊!天呐!我刚想问这个问题。我做的题是求和,从1加到100
快试试吧,可以对自己使用挽尊卡咯~◆◆
一般都用++i,虽然两种结果一样,前置的不要临时变量
快试试吧,可以对自己使用挽尊卡咯~◆◆
++i是加1,返回+1后的值i++是加1,返回没+1前的值
登录百度帐号他的最新文章
他的热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)程序中遇到的问题,题目上说是用不带回字符串常量chars的长度值对不对,请各位高手给说明一下。
c开始时指向字符串首地址,i此时=0;
c指向字符串的最后一个字符的地址时,i=字符串长度-1;
当i++,c++后,i=字符串长度,c指向的不是字符串的地址了,跳出循环。
2. 将 printf("%f",b[i]); 改为printf("%f",b[i]);
在循环中的过程是这样的:
这道题思路是判断一个数,原数在当它自加1的情况下能被2整除,然后在满足的情况下再自加1能被3整除,然后在满足的情况下再自加1能被7整除...
Big horses 2
Middle horses 30
Small horses 68
Big horses 5
Middle horses 25...
2如穿全杯型的,则可选穿3/4杯型的;若穿3/4杯的,那可能1/2杯更适合
不是这样数的。是胎动一下就在手机或者ipad屏幕上那个大眼睛的图标上点一下,软件就会帮你计数
答: 低渗性脱水的补钠量可按下列公式计算:
需补充的钠量(mmol/L)=[血钠的正常值(mmol/L)-血钠测得 值(mmol/L)] x 体重(kg) x0.6(...
答: 对于那些有志于穷尽数学奥秘的学生,他总是循循善诱地予以启发和教育,而对于那些急功近利、在学习上不肯刻苦钻研的人,则毫不客气地予以批评
答: 很简单,水沸腾也就100度左右,而纸要燃烧的着火点远远高于100度,在纸远达不到着火点的时候,纸锅上的水就因为水对流把热量带走,使纸锅底的温度远低于纸着火点温度...
答: 中国人的数学理应比外国人好! 这是我的个人观点,这在于中国人对数字的发音是单音,因此,对数字的记忆较为简单,提高了学习数学的效率!
而科学的发展,往往受制于社会...
大家还关注
Copyright &
Corporation, All Rights Reserved
确定举报此问题
举报原因(必选):
广告或垃圾信息
激进时政或意识形态话题
不雅词句或人身攻击
侵犯他人隐私
其它违法和不良信息
报告,这不是个问题
报告原因(必选):
这不是个问题
这个问题分类似乎错了
这个不是我熟悉的地区
相关问答:123456789101112131415C++中++i与i++效率比较 - 风言枫语 - 博客园
随笔 - 2355
在这里声明,简单的比较前缀自增运算符和后缀自增运算符的效率是片面的,因为存在很多因素影响这个问题的答案。首先考虑内建数据类型的情况:如果自增运算表达式的结果没有被使用,而是仅仅简单的用于增加一员操作数,答案是明确的,前缀法和后缀法没有任何区别,编译器的处理都应该是相同的,很难想象得出有什么编译器实现可以别出心裁在二者之间制造任何差异。我们看看下面这个程序:
& && &&&#include &stdio.h&
& && &&&int main()
& && && && && & int i = 0;
& && && && && & int x = 0;
& && && && && & i++;
& && && && && & ++i;
& && && && && & x = i++;
& && && && && & x = ++i;
& && && && && & return 0;
上面的代码在VC 6.0上编译得到的汇编如下:
& && &&&mov& && &&&DWORD PTR _i$[ebp], 0
& && &&&mov& && &&&DWORD PTR _x$[ebp], 0
& && &&&mov& && &&&eax, DWORD PTR _i$[ebp]
& && &&&add& && &&&eax, 1
& && &&&mov& && &&&DWORD PTR _i$[ebp], eax
& && &&&mov& && &&&ecx, DWORD PTR _i$[ebp]
& && &&&add& && &&&ecx, 1
& && &&&mov& && &&&DWORD PTR _i$[ebp], ecx
& && &&&mov& && &&&edx, DWORD PTR _i$[ebp]
& && &&&mov& && &&&DWORD PTR _x$[ebp], edx
& && &&&mov& && &&&eax, DWORD PTR _i$[ebp]
& && &&&add& && &&&eax, 1
& && &&&mov& && &&&DWORD PTR _i$[ebp], eax
& && &&&mov& && &&&ecx, DWORD PTR _i$[ebp]
& && &&&add& && &&&ecx, 1
& && &&&mov& && &&&DWORD PTR _i$[ebp], ecx
& && &&&mov& && &&&edx, DWORD PTR _i$[ebp]
& && &&&mov& && &&&DWORD PTR _x$[ebp], edx
代码段第8行和第9行生成的汇编代码分别对应Line 8和Line 9下对应的汇编代码,可以看到三个步骤几乎完全一样。
代码段第10行和第11行生成的汇编代码分别对应Line 10和Line 11下对应的汇编代码,可以看到都是五个步骤,只是在加1的先后顺序上有一些区别,效率也是完全一样的。
由此说明,考虑内建数据类型时,它们的效率差别不大(去除编译器优化的影响)。所以在这种情况下我们大可不必关心。
现在让我们再考虑自定义数据类型(主要是指类)的情况。此时我们不需要再做很多汇编代码的分析了,因为前缀式(++i)可以返回对象的引用,而后缀式(i++)必须产生一个临时对象保存更改前对象的值并返回(实现过自定义类型++运算符定义的就知道),所以导致在大对象的时候产生了较大的复制开销,引起效率降低,因此处理使用者自定义类型(注意不是指内建类型)的时候,应该尽可能的使用前缀式地增/递减,因为他天生体质较佳。
内建数据类型的情况,效率没有区别。
自定义数据类型的情况,++i效率较高。
阅读(...) 评论()
Copyright & 风言枫语
Powered by:
模板提供:他的最新文章
他的热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)}

我要回帖

更多关于 ipad怎么使用比较好 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信