自增1运算符记为“++”,自减1运算符记为“--”,都具有右结合性。
例子
定义变量a、b、c和i,初始化a和i,接着赋值b、c,输出a、b、c,最后输出i的各种自增自减结果
代码
#include <stdio.h>
#include "conio.h"
int main()
{
int a = 5, b, c;
int i = 10;
b = a++;
c = ++b;
printf("a = %d b = %d c = %d\n",a,b,c);
printf("i = %d; i++ = %d; i++ = %d\n", i , i++, i++);
printf("++i = %d\n",++i);
printf("--i = %d\n",--i);
printf("i++ = %d\n",i++);
printf("i-- = %d\n",i--);
printf("-i++ = %d\n",-i++);
printf("-i-- = %d\n",-i--);
getch();
}
输出结果:
自增自减运算符具有右结合性,第二个printf语句运算顺序自右向左,先计算最右边的i++,即输出i = 10;再对i进行自增加,此时i = 11;再计算中间的i++,即输出i = 11,i再自增1,此时i = 12,最后输出i=12,i再自增1,i=13。