次の変数を作成するとします。
s=John
i=12345
f=3.14
これらの変数はすべてメモリに文字列として格納されていますか?それともbash
別のデータ型がありますか?
ベストアンサー1
バッシュ変数はタイプが指定されていない。
他の多くのプログラミング言語とは異なり、Bashは変数を「タイプ」に区別しません。デフォルトでは、Bash変数は文字列ですが、状況によっては、Bashは変数の算術演算と比較を許可します。決定要因は、変数値に数値のみが含まれているかどうかです。
〜のようにもう一つの答えは次のとおりです。、種類弱い形タイピングを使用してくださいdeclare
。
これは、一部のプログラミング言語で使用できる非常に弱い形式の種類[1]です。
例を見てください。
declare -i number # The script will treat subsequent occurrences of "number" as an integer. number=3 echo "Number = $number" # Number = 3 number=three echo "Number = $number" # Number = 0 # Tries to evaluate the string "three" as an integer.
引用: