在C语言中,i++与++i的区别,当i=5时,他们的变量值与表达式的值分别是多少

如题所述

你好

这是个变量自加的问题,i++和++i是有区别的。

当一段代码里出现
...i++;...
或...++i;...
时,他们其实没多大区别,只是++i的执行效率要高些,但对结果i的值都是一样的。

但如果代码里出现的是
...m=i++;...
或...m=++i;...
时,他们结果就不一样了,因为i++是先赋值再自加(可以理解为2句:m=i;++i;),而++i是先自加再赋值(可以理解为2句:++i;m=i)。也就是说如果i=5,那么执行之后,前者的m=5;而后者m=6.

这些你可以试一下再慢慢体会,希望对你有帮助。。。
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-01-30
i++是先取i的值再自加1,++i是先自加1再取i的值
i=5;
printf("%d%d",i++,++i)
5,7
先输出i,i++之后i=6,然后++i,i先自加i=7,输出i
第2个回答  2010-01-30
i=5设a:j=i++与b:j=++i得a:j=6,i=5;b:j=i=6
第3个回答  2010-01-30
,假设j=i++,j=5,i=6;j=++i,i=j=6

在C语言中,i++与++i的区别,当i=5时,他们的变量值与表达式的值分别是多...
时,他们其实没多大区别,只是++i的执行效率要高些,但对结果i的值都是一样的。但如果代码里出现的是 ...m=i++;...或...m=++i;...时,他们结果就不一样了,因为i++是先赋值再自加(可以理解为2句:m=i;++i;),而++i是先自加再赋值(可以理解为2句:++i;m=i)。也就是说...

c语言i++和++i的区别
`i++`和`++i`是两个非常常用的操作符,它们在表达方式和使用方式上存在一些微妙的差异。i++ `i++`是一个后缀递增运算符,它首先返回变量的原始值,然后将变量的值增加1。这在C语言中是常见的递增操作方式。例如:int i = 5; int result = i++; \/\/ result的值现在是5,i的值现在是6 在...

c语言中i++和++i的区别
i++是先引用后自加。如n=0;i=0;n=i++;则结果为n=0;i=1;++i是先自加后饮用。如n=0;i=0;n=++i;则结果为n=1;i=1;

c语言中i++和++ i有什么区别?
i++和++i都是c语言里的自增,但是它们自增的顺序不同。++i表示,i自增1后再参与其它运算,而i++ 则是i参与运算后,i的值再自增1。for循环里循环变量增值用i++,而不用++i是因为在循环结构里需要循环变量来结束循环,而使用i++则会导致本来应该继续的循环少执行一次,所以循环结构里通常都是...

i++和++i的区别
i++和++i的主要区别在于操作方式和返回值的时机不同。详细解释:操作方式:1. i++:这种操作是先使用当前的i值,然后将其增加1。可以理解为先取值后增加。例如,如果i等于5,表达式`j = i++`将首先使用i的当前值5赋给j,然后i增加1变为6。2. ++i:这种操作是先增加i的值,然后使用该增加...

c语言中++i和i++有什么区别
在C语言中,`++i`和`i++`是两种不同的运算符,它们在操作数和结果上有一些区别。1. `++i`:这是一个前置自增运算符。它首先对变量i进行自增操作,然后再返回这个自增后的值。换句话说,`++i`首先返回的是变量i自增后的值,然后再将变量i的值加一。例如:int i = 5; int incremented...

C语言中的i++与++i的使用区别?举例说明
c语言i++和++i的区别:1、i++式子值为原来的值,就是通俗说的“先赋值再加1”;2、而++i式子值为i变化后的值,也就是“先加1后赋值”。而在for循环中,如果要表示递增,两种都可以。例如:如果i的初始值是0,使用后再加1,则输出i++为0;如果i的初始值是0,使用前先加1,则输出++i为...

c语言i++和++i的区别
i++和++i都是C语言中常用的自增操作符,它们都可以使一个变量增加1,但它们的操作顺序不同,因此也会对变量的值产生不同的影响。下面我会更加详细地解释i++和++i的区别,包括操作顺序、返回值和应用场景等方面。1.i++和++i的操作顺序 i++表示先使用变量i的当前值,在执行完表达式之后再将i的...

c语言 i++和++i什么区别?
结论:在C语言中,"i++"和"++i"看似都是对变量i进行递增操作,但实际上它们的执行顺序略有不同,影响着最终的值获取。让我们来详细解析这两者的区别。首先,"i++"的含义是在表达式求值后立即执行加1操作,也就是说,它的值是i在加1之前的原始值。这可以理解为“先赋值再加1”。例如,如果i...

i++和++i的区别
i++和++i的区别如下:1、赋值顺序不同。++i是先加后赋值;i++是先赋值后加;++i和i++都是分两步完成的。因为++i是后面一步才赋值的,所以它能够当作一个变量进行级联赋值,++i=a=b,即++i是一个左值;i++的后面一步是自增,不是左值。2、效率不同。比如i=3,b=i++就是说b=3,...

相似回答
大家正在搜