<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # 4.3 Bash變量是弱類型的 不同于許多其他編程語言,Bash 并不區分變量的類型。本質上說,*Bash 變量是字符串*,但在某些情況下,Bash 允許對變量進行算術運算和比較。決定因素則是變量值是否只含有數字。 樣例 4-4. 整數還是字符串? ```bash #!/bin/bash # int-or-string.sh a=2334 # 整數。 let "a += 1" echo "a = $a " # a = 2335 echo # 依舊是整數。 b=${a/23/BB} # 將 "23" 替換為 "BB"。 # $b 變成了字符串。 echo "b = $b" # b = BB35 declare -i b # 將其聲明為整數并沒有什么卵用。 echo "b = $b" # b = BB35 let "b += 1" # BB35 + 1 echo "b = $b" # b = 1 echo # Bash 認為字符串的"整數值"為0。 c=BB34 echo "c = $c" # c = BB34 d=${c/BB/23} # 將 "BB" 替換為 "23"。 # $d 變為了一個整數。 echo "d = $d" # d = 2334 let "d += 1" # 2334 + 1 echo "d = $d" # d = 2335 echo # 如果是空值會怎樣呢? e='' # ...也可以是 e="" 或 e= echo "e = $e" # e = let "e += 1" # 空值是否允許進行算術運算? echo "e = $e" # e = 1 echo # 空值變為了一個整數。 # 如果時未聲明的變量呢? echo "f = $f" # f = let "f += 1" # 是否允許進行算術運算? echo "f = $f" # f = 1 echo # 未聲明變量變為了一個整數。 # # 然而…… let "f /= $undecl_var" # 可以除以0么? # let: f /= : syntax error: operand expected (error token is " ") # 語法錯誤!在這里 $undecl_var 并沒有被設置為0! # # 但是,仍舊…… let "f /= 0" # let: f /= 0: division by 0 (error token is "0") # 預期之中。 # 在執行算術運算時,Bash 通常將其空值的整數值設為0。 # 但是不要做這種事情! # 因為這可能會導致一些意外的后果。 # 結論:上面的結果都表明 Bash 中的變量是弱類型的。 exit $? ``` 弱類型變量有利有弊。它可以使編程更加靈活、更加容易(給與你足夠的想象空間)。但它也同樣的容易造成一些小錯誤,容易養成粗心大意的編程習慣。 為了減輕腳本持續跟蹤變量類型的負擔,Bash *不允許*變量聲明。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看