为了账号安全,请及时绑定邮箱和手机立即绑定

(( $num1 + $num2 ))前面为什么要加个$符号

sum2=$(( $num1 + $num2 ))

 (( $num1 + $num2 ))前面为什么要加个$符号?(( $num1 + $num2 ))相加后就是一个数字

了,在数字前再加个$符号理解不了,相当于sum2=$40,这不符合变量的声明啊!求大神解答。

正在回答

4 回答

sum2=$(( $num1 + $num2 )) ✅

sum2=$((num1 + num2)) ✅

0 回复 有任何疑惑可以回复我~
#1

UFO2015

$(($)) 多此一举?
2021-01-05 回复 有任何疑惑可以回复我~

$代表指向变量本身,也就是说把括号里面的东西当成一个变量再赋值给sum2。 就好比我们要引用num1 前面必须要加个$。这是shell的特别格式,不需要太纠结。

而且因为$ ,$#,$*....等组合应用,所以$变得有意义。尽管写起来比较麻烦。系统用的脚本语言不需要最求优雅或者简洁,更重要是要区分和一般的编程语言的不同。防止运行的报错。

个人理解。

而且,不加$ 在识别加减时候无效。编程输出”10 +20“ 这样一个字符串

0 回复 有任何疑惑可以回复我~

在后面的运算符中tony老师会讲到这个,就理解为固定的格式吧,按照你的理解也行,谢谢同学的回答!

0 回复 有任何疑惑可以回复我~

里面相加后还只是两个字符串的“+”号拼接,加$才能转为数字

1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

(( $num1 + $num2 ))前面为什么要加个$符号

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信