Increment and decrement operator
Using increment and decrement operators, we can increment the value of a variable by 1 or decrement by 1.
Example
int a = 5; ++a; //After the above statement execution, the value of a will be 6. int b = 10; --b; //After the above statement execution, the value of b will be 9.
A++ vs a+1
You might think why do we need ++ operator to increment variable value by 1. we can achieve this using a=a+1.
You are right. Program level it won’t make any difference. Both will give the same result. But In assembly level some optimizations are there.
a = a + 1;
If you give a = a + 1;
It will load the value a into memory.
And add 1 to a.
And then store it again to a.
It will take three CPU cycles.
a++;
But if you give a++,
Its straight forward in assembly level. It’s just increment a value by 1. We can save some CPU cycles.
Some compilers optimize it smartly now a day.
Example Program
Example
#include<stdio.h> int main() { int a = 5; a++; printf("After Increment, a = %d\n",a); //now a will be 6 a--; printf("After Decrementing, a = %d\n",a); // now a will be 5 return 0; }