分页: 1 / 2
一个关于i++和++i的初级问题……
发表于 : 2009-07-31 18:42
由 jiefey
#include<stdio.h>
int main()
{
int i=3,j,k;
j=i++;
k=++i;
printf("i=%d,j=%d,k=%d\n",i,j,k);
}
结果:i=5,j=3,k=5
我很奇怪,为什么不是 i=3,j=4,k=4呢?能具体的解释一下么?把计算过程描述出来……
j=i++ 那不就是 j=i+1么?为什么 I=5?

Re: 一个关于i++和++i的初级问题……
发表于 : 2009-07-31 18:49
由 soiamso
多看看谭浩强教授的书
Re: 一个关于i++和++i的初级问题……
发表于 : 2009-07-31 19:00
由 jiefey
soiamso 写了:多看看谭浩强教授的书
- -!我是看书的亚
书上说
i++现使用i,再把i的值加1
i-- 先使用i,再把i的值减1
++i 先把i的值加1,在使用i
--i先把i的值减1,再使用i
Re: 一个关于i++和++i的初级问题……
发表于 : 2009-07-31 20:05
由 dbzhang800
多看看谭浩强教授的书
个人非常不建议看谭浩强的书
i++现使用i,再把i的值加1
i-- 先使用i,再把i的值减1
++i 先把i的值加1,在使用i
--i先把i的值减1,再使用i
写错别字,是个态度问题

Re: 一个关于i++和++i的初级问题……
发表于 : 2009-07-31 20:10
由 soiamso
jiefey 写了:soiamso 写了:多看看谭浩强教授的书
- -!我是看书的亚
书上说
i++现使用i,再把i的值加1
i-- 先使用i,再把i的值减1
++i 先把i的值加1,在使用i
--i先把i的值减1,再使用i
书上的定义十分明确
Re: 一个关于i++和++i的初级问题……
发表于 : 2009-07-31 20:42
由 懒蜗牛Gentoo
你自己说的不是很明白了么,i++先使用i,再加一啊。
j=i++
先使用i给j复制,也就是等于3,然后i自己再加1,也就等于4.
k=++i
i自己先加一,等于5,再使用i给k复制,也等于5
Re: 一个关于i++和++i的初级问题……
发表于 : 2009-07-31 21:32
由 jiefey

晕,看了6F的朋友解释……
我懂了,原来是得到4后继续加下去啊……我以为是从新从3开始算呢……
Re: 一个关于i++和++i的初级问题……
发表于 : 2009-07-31 21:35
由 x15988649286
jiefey 写了:#include<stdio.h>
int main()
{
int i=3,j,k;
j=i++;
k=++i;
printf("i=%d,j=%d,k=%d\n",i,j,k);
}
结果:i=5,j=3,k=5
我很奇怪,为什么不是 i=3,j=4,k=4呢?能具体的解释一下么?把计算过程描述出来……
j=i++ 那不就是 j=i+1么?为什么 I=5?

首先:"j=i++",就是i加1但是输出的是3,则j=3,然后:"k=++i":i再加1,但是输出的5,则i=k=5

Re: 一个关于i++和++i的初级问题……
发表于 : 2009-07-31 21:35
由 wangks18
谭老头的书不错
Re: 一个关于i++和++i的初级问题……
发表于 : 2009-07-31 21:48
由 cnkilior
刻意去区分/使用i++,++i是属于没事找抽型!
Re: 一个关于i++和++i的初级问题……
发表于 : 2009-07-31 22:49
由 ChloeRei
难得有个扰脑的东西就被专家抓住用来做考题了
编程应该解决实际任务阿
Re: 一个关于i++和++i的初级问题……
发表于 : 2009-07-31 23:56
由 jiefey

不是啊各位大哥!
我是学习C语言的新手,一直没搞懂这个问题!所以就上来问问大家了!
今天谢谢你们阿~
Re: 一个关于i++和++i的初级问题……
发表于 : 2009-08-01 12:49
由 ChloeRei
不知别人怎么样(没看多少代码)
我自己写的时候类似
i++
我都是单独写一行的

Re: 一个关于i++和++i的初级问题……
发表于 : 2009-08-01 13:16
由 ttand
int i=1;
i=i++;
然后i等于几???
Re: 一个关于i++和++i的初级问题……
发表于 : 2009-08-01 14:12
由 tianyuan008
这个问题是没有答案的