This topic is about AWK – Increment and Decrement Operators.
AWK supports the following increment and decrement operators −
Pre-Increment
It is represented by ++. It increments the value of an operand by 1. This operator first increments the value of the operand, then returns the incremented value. For instance, in the following example, this operator sets the value of both the operands, a and b, to 11.
Example
awk 'BEGIN { a = 10; b = ++a; printf "a = %d, b = %d\n", a, b }'
On executing this code, you get the following result −
Output
a = 11, b = 11
Pre-Decrement
It is represented by –. It decrements the value of an operand by 1. This operator first decrements the value of the operand, then returns the decremented value. For instance, in the following example, this operator sets the value of both the operands, a and b, to 9.
Example
[jerry]$ awk 'BEGIN { a = 10; b = --a; printf "a = %d, b = %d\n", a, b }'
On executing the above code, you get the following result −
Output
a = 9, b = 9
Post-Increment
It is represented by ++. It increments the value of an operand by 1. This operator first returns the value of the operand, then it increments its value. For instance, the following code sets the value of operand a to 11 and b to 10.
Example
[jerry]$ awk 'BEGIN { a = 10; b = a++; printf "a = %d, b = %d\n", a, b }'
On executing this code, you get the following result −
Output
a = 11, b = 10
Post-Decrement
It is represented by –. It decrements the value of an operand by 1. This operator first returns the value of the operand, then it decrements its value. For instance, the following code sets the value of the operand a to 9 and b to 10.
Example
[jerry]$ awk 'BEGIN { a = 10; b = a--; printf "a = %d, b = %d\n", a, b }'
On executing this code, you get the following result −
Output
a = 9, b = 10
To know more, Click Here.
Pingback: AWK - Arithmetic Operators - Adglob Infosystem Pvt Ltd
Pingback: AWK - Operators - Adglob Infosystem Pvt Ltd