例子:
$ number=1
$ (( number++ ))
$ echo $number
2
$ (( number * 10 ))
$ echo $number
2
修复很简单:number=$(( number * 10 ))
,我只是不明白这两个操作行为不同的可能原因。
最佳答案
因为这就是它们的设计目的。
如果您想要 number+1
的值而不更改 number
,您可以使用(不出所料)number+1
。
关于linux - 在算术表达式中,为什么递增变量会修改原始变量而其他操作不会?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41571043/