鱼C论坛

 找回密码
 立即注册
查看: 5021|回复: 14

自增自减 i++ i--超级烦。。救命

[复制链接]
发表于 2012-7-21 17:00:02 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x

请大家帮我指正下
void main()
{
     int i=8;
      printf(“%d\n”,--i);
}
这个输出的值为什么还是8啊.........为什么不是7呢。他跟i--有什么区别

还有为什么i--是9啊。。还能增加呢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2012-7-21 17:00:35 | 显示全部楼层
到底为什么啊。。。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2012-7-21 17:09:17 | 显示全部楼层
        int i=8;
       
        printf("%d   \n",i++);
        printf("%d   \n",i--);
       

输出的为什么是8和9啊。。为什么不是8和8
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2012-7-21 17:13:16 | 显示全部楼层
怎样才算运算后。再自增
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2012-7-21 17:15:06 | 显示全部楼层
求高手帮我详细说明一下这道题

void main()
{
        int i=5,j=5,p,q;
        p=(i++)+(i++)+(i++);
        q=(++j)+(++j)+(++j);
        printf("%d,%d,%d,%d",p,q,i,j);
}
输出pqij的值



感激不尽啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-7-21 18:05:41 | 显示全部楼层
#include<stdio.h>

void main()
 {
         int i=5,j=5,p,q;
         p=(i++)+(i++)+(i++);                //p= 5+5+5 =15  然后i 自增3次  i= 8 
         q=(++j)+(++j)+(++j);                //q= 这个可以写成这样 q=((++j)+(++j))+(++j) 先自增2 次 j=7   然后相加 q=7+7+(++j) 这时候
                 //j 在自增一次 变成了8  q=7+7+8= 22   
         printf("%d,%d,%d,%d",p,q,i,j);                //p=15 q=22 i=8 j=8
 }
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-7-21 18:07:12 | 显示全部楼层
这个资料你去下载来看下 你就会清楚了
C语言自增自减学习资料
http://115.com/file/c263gvhu#
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-7-21 18:13:11 | 显示全部楼层
.._再_ 发表于 2012-7-21 17:09
int i=8;
       
        printf("%d   \n",i++);

+在后面就是先取值 再+呗  那么显示8
然后下一条显示就是9  然后再减1变回8  但是就不用显示了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-7-23 11:50:22 | 显示全部楼层
不用鸟这种问题、、、、意义不大~;P
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2012-7-23 14:06:06 | 显示全部楼层
紫夜逸风 发表于 2012-7-23 11:50
不用鸟这种问题、、、、意义不大~

追求知识.....你懂得
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2012-7-23 14:09:26 | 显示全部楼层

.....

{(++j) +(++j)}+(++j)中的前面两个++j 都要自增2???
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-7-23 14:16:09 | 显示全部楼层
.._再_ 发表于 2012-7-23 14:09
.....

{(++j) +(++j)}+(++j)中的前面两个++j 都要自增2???

不是要先运算 (++j)+(++j) 吗 所以先自增2次 然后相加 然后在加++j 的时候 再自增一次后在相加
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2012-7-23 14:19:08 | 显示全部楼层
丿夏夜灬彬刂 发表于 2012-7-21 18:07
这个资料你去下载来看下 你就会清楚了
C语言自增自减学习资料
http://115.com/file/c263gvhu#

这个好像下载不到...要登录115的啊...
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2012-7-23 14:19:44 | 显示全部楼层
丿夏夜灬彬刂 发表于 2012-7-23 14:16
不是要先运算 (++j)+(++j) 吗 所以先自增2次 然后相加 然后在加++j 的时候 再自增一次后在相加

好像有点明白了....谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2022-10-19 16:38:03 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-17 06:02

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表