欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

C语言基础学习运算符-自增自减 博客分类: C语言 i++++i自增自减

程序员文章站 2024-03-19 10:55:58
...

自增自减

这两种运算符以两种方式出现:

在第一种方式中,++或--出现在它作用的变量的前面,称为前缀模式;

反之称为后缀模式。

 

这两种模式的区别在于前缀模式是先执行自增(或自减)操作,再返回自增(或自减)后变量的值,后缀模式是先返回变量的值,再进行自增(或自减)操作。我们来看下面这一段代码:

int a = 1;
int b = a++;    //后缀模式
int c = ++a;    //前缀模式

 

若输出a、b、c的值,你会发现,a的值为3,b的值为1,而c的值为3。为什么b的值依然是1?这是因为,采用后缀模式意味着使用a的值之后改变a,在进行b = a++的计算时,先把a的值赋给b,之后a再加1。而c = ++a采用了前缀模式,在进行计算时,先把a的值加1,之后在把新的a值赋给c。

当然,你可以巧妙地避开前缀模式和后缀模式讲产生不同效果的代码,即把自增与自减运算和赋值运算分成两行。在下面的代码中,即使把i++改成++i,j的值依然是相同的。

int i = 1;
i++;
int j = i;

 

注意,上面这段代码和下面这段代码效果完全是等同的:

int i = 1;
i = i + 1;
int j = i;

 

更多学习内容,就在码芽网http://www.mayacoder.com/lesson/index