18、AWK 自增自减运算符

AWK对递增递增运算符的支持和 C 语言 一样完善,包括前缀自增运算、前缀自减运算、后缀自增运算和后缀自减运算

前缀自增运算符

前缀缀自增运算符通常表示为 ++x,也就是两个加号在操作数的前面。通常是先执行操作数加 1 的运算然后返回操作数的值。 对于 a = ++x 表达式类似于下面的操作

x = x + 1
a = x

也就是说,前缀自增运算符先递增其值然后返回操作数的值。

[www.ddkk.com]$ awk 'BEGIN { x = 15; y = ++x; printf "x = %d, y = %d\n", x, y }'

执行以上命令,输出结果如下

x = 16, y = 16

前缀自减运算符

前缀缀自减运算符通常表示为 --x,也就是两个减号在操作数的前面。通常是先执行操作数减去 1 的运算然后返回操作数的值。 对于 a = --x 表达式类似于下面的操作

x = x - 1
a = x

也就是说,前缀自减运算符先递减其值然后返回操作数的值。

[www.ddkk.com]$ awk 'BEGIN { x = 15; y = --x; printf "x = %d, y = %d\n", x, y }'

执行以上命令,输出结果如下

x = 14, y = 14

后缀自增运算符

后缀自减运算符通常表示为 y++,也就是两个加号在操作数的后面。通常是执行先返回当前操作数的值然后将操作数加 1 的运算。 对于 a = x++ 表达式类似于下面的操作

a = x
x = x + 1

也就是说,后缀自增运算符先首先返回操作数的值,然后递增其值。

[www.ddkk.com]$ awk 'BEGIN { x = 25; y=x++; printf "x = %d, y = %d\n", x, y }'

执行以上命令,输出结果如下

a = 26, b = 25

后缀自减运算符

后缀自减运算符通常表示为 x--,也就是两个减号在操作数的后面。通常是执行先返回当前操作数的值然后将操作数减去 1 的运算。 对于 a = x-- 表达式类似于下面的操作

a = x
x = x - 1

也就是说,后缀自减运算符先首先返回操作数的值,然后递减其值。

[www.ddkk.com]$ awk 'BEGIN { x = 15; y = x--; printf "x = %d, y = %d\n", x, y }'

执行以上命令,输出结果如下

x = 14, y = 15