Linux运维笔记
我们一直在努力

Bash Shell ((i++))和((++i))的区别

运算符:++、– 增加和减少,可前置也可放在变量的末尾

在变量前后使用——和++特殊运算符的表达式

如果i在运算符(++或——)的前面,那么在输出整个表达式时,会输出i的值,因为i为10,所以表达式的值为10。

[root@JD wwwroot]# i=10
[root@JD wwwroot]# echo $i
10
[root@JD wwwroot]# echo $((i++))
10
[root@JD wwwroot]# echo $((i++))
11
[root@JD wwwroot]# echo $((i++))
12

如果i在运算符(++或——)的前面,那么在输出整个表达式时,会输出i的值,因为i为11,所以表达式的值的为11。

[root@JD wwwroot]# i=10
[root@JD wwwroot]# echo $i
10
[root@JD wwwroot]# echo $((++i))
11
[root@JD wwwroot]# echo $((++i))
12
[root@JD wwwroot]# echo $((++i))
13

 

执行echo$((a++))和echo$((a——))命令输出整个表达式时,输出的值即为a的值,表达式执行完毕后,会对a进行++、——的运算,而执行echo$((++a))和echo$((——a))命令输出整个表达式时,会先对a进行++、——的运算,然后再输出表达式的值,即为a运算后的值。

赞(0) 打赏

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址