永发信息网

c++中 i 是变量 那么 ++i 和 i++有什么不同

答案:6  悬赏:60  手机版
解决时间 2022-01-01 08:57
c++中 i 是变量 那么 ++i 和 i++有什么不同
最佳答案
++i为前置自增,i++为后置自增,前者i先加1再参加其他运算,后者i先参加其他运算再加1,如果单独一条语句i++;或++i;两者运行效果相同,比如
for(int i=0; i<10; i++)和for(int i=0; i<10; ++i)实现的功能一样,在比如
int i = 0, j;
j = i++;
运行结果为i为1,但是j为0
int i = 0, j;
j = ++i;
运行结果为i为1,但是j为1
全部回答
一个返回值是i+1,一个返回值是i 比如,假设i=2 1+(i++)=2; 1+(++i)=3; 运行完后i都是3
楼上的说法不对,建议看看书,i++和++i的区别。同样是把i+1,i++返回的是+1前的值,++i返回的是+1后的值
当i=3时,执行i++后,i变成了4,但i++返回值是3,因此满足条件,循环继续。
当i=4时,执行i++后,i变成了5,而i++返回值是4,跳出循环。
所以最后i是5
什么都可能是, 如果是int i; int a为结果 那么++i:i = i + 1;a = i; i++:a = i;i = i + 1;
++i是i的值先自身加1再参与运算,i++是i的值先参与运算再自身加1。 比如:int i=0,j; j=i++; 运算结果:j=0,i=1 int i=0,j; j=++i; 运算结果:j=1,i=1
++i 先加加再运算 //你也可以理解为,先加加,再参与逻辑运算 i++ 是先参与运算再加加//你也可以理解为 先参与逻辑运算,再加加 #include //例子一 int main() { int i=0,j=0; int x; x= ++i+j++; printf("%d\n",x);//output 1 } #include //例子二 int foo() { int i=0; return ++i; } int add() { int i=0; return i++; } int main() { printf("%d\n",foo());//output 1 printf("%d\n",add());//output 0 }
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
怀孕两个多月早晚刷牙呕吐一点血是什么原因
建设银行卡必须当天激活吗?不激活的话,钱能
一扎是多少
“天平是轻重的衡量器,实践是是非的试金石。
请问海澜之家在县级能加盟吗?
一定温度下,由水电离的H+和OH—的物质的量浓
会计,单选题: 10.记账和总账一般采用( )。
2017中国诗词大会第四场有哪些选手
轻轻的反义词是什么还有
— He’s fifteen years younger than you!—
洛阳今天天气如何?8月3日的下雨了吗?
必用单词用英语怎么说
老司机的英语叫什么
下列图形是某些多面体的平面展开图,说出这些
微信后台是什么
推荐资讯
在微淘中怎么发出评论(要一一的步骤)
Dell笔记本重置此电脑。我选的保留文件。d盘e
DIY的三倍分就是这个吗
栾川鲜面条地址有知道的么?有点事想过去
爨乡印象福园西门怎么去啊,有知道地址的么
日鹏超市在什么地方啊,我要过去处理事情
红棉坊这个地址在什么地方,我要处理点事
中国电信天翼3G手机卖场安时路专营店地址在什
育才源教育地址在什么地方,想过去办事
富锦市房地产管理局地址在什么地方,想过去办
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?