浅析C语言中“++”、“- -”等缩略写法

  • Post author:
  • Post category:其他




初学C语言,不难发现,许多基本例题都会用到“i++”、“++i”等简写,稍有不慎,就很容易弄混,下面就让我们来细致分析下,这些简写究竟代表什么,和如何区别开来。



1.“++”和“- -”


举个例子,int i=10;int j;

那么j=++i; j=- -i;j=i++;j=i- -中,j和i的值分别为多少?


j=++i,可以看成两步:

1.i=i+1=10+1=11;

2.j=i=11;


同理j=- -i也可以看成两步:

1.i=i-1=10-1=9;

2.j=i=9;


j=i++,可以看成两步:

1.j=i=10;

2.i=i+1=11;


同理j=i- -,可以看成两步:

1.j=i=10;

2.i=i-1=9;

分了步骤以后,就清晰很多了。可从一开始熟记到后面得心应手,总得有个过程。于是我自己总结了一个小技巧,来便于记忆这四个式子。



**首先,看等号后面是否为字符。若是的话,则先进行左边字符的取值运算,即j=i;

如果不是的话,就将左边字符的取值运算放在最后一步。**

接下来,我们把++i; – -i;i++;i- -这些式子单独拿出来看,这些运算与j无关,单纯是i的基本运算。




++i;i++是i=i+1。- -i;i- -则是i=i-1。

最后,看回第一步,如果是先进行左边字符的取值运算,则第二步就是i的加减1运算;

如果是左边字符的取值运算在最后一步的话,则第一步就先进行i的加减1运算。

再让我们看回当初的四个式子,现在,是不是感觉更清晰了呢?



类似的缩略写法还有“+=”、“-=”等等,这类倒也不难记清:

例如int a;



a+=5即是a=a+5


a-=5即是a=a-5


a*=5即是a=a*5


a/=5即是a=a/5


a%=5即是a=a%5

以上内容比较简单基础,但却十分重要;也衷心希望大家阅读完后,能够有所进步。

本人初学菜鸟一枚,各位大佬们若是发现有问题了也请指出,好早日更正。



版权声明:本文为weixin_43823473原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。