Go 言語の定数には、ブール定数、整数定数、浮動小数点定数、複素数定数、文字列定数の 5 種類があります。 Go 言語の定数は、変更されないデータを格納するために使用されるキーワード const を使用して定義されます。定数は、関数内で定義されている場合でも、コンパイル時に作成され、ブール値、数値 (整数、整数) のみにすることができます。 、浮動小数点、複素数)と文字列型。
このチュートリアルの動作環境: Windows 7 システム、GO バージョン 1.18、Dell G3 コンピューター。
定数とは、プログラムの実行中に変更できない固定値を指します。これらの固定値はリテラルとも呼ばれます。
定数はプログラムの最も基本的な要素であり、定義後に再割り当てすることはできません。
Go 言語の定数は、変更されないデータを保存するために使用されるキーワード const を使用して定義されます。定数は、関数内で定義されている場合でも、コンパイル時に作成され、ブール型: 数値型 (整数、浮動小数点、複素数) と文字列型。コンパイル時の制限により、定数を定義する式は、コンパイラによって評価できる定数式である必要があります。
ブール定数
ブール定数には、true (真) または false (偽) の 2 つの値しかありません。
コードは次のとおりです:
const x = true fmt.Print(x) //输出true
整数定数
整数定数は実際には正の数です
コードは次のとおりです以下:
const x = 20 fmt.Print(x) //输出20
浮動小数点数定数
浮動小数点数定数は実際には 10 進数です
コードは次のとおりです:
cOnstx= 0.618 fmt.Print(x) //输出%f0.618
文字/文字列定数
コードは次のとおりです:
const x = 'a' fmt.Print(x) //输出97 const x = "a" fmt.Print(x) //输出a
複雑な定数
コードは次のとおりです。以下:
const x = 3 + 2i fmt.Print(x) //输出%v(3+2i)
子供のブーツをよく見てみると、「a」と「a」の出力値が異なります。一重引用符内の「a」は文字を表し、「a」は二重引用符内の「」は文字列を表します。 Go 言語では、C 言語と同様に、「1」、「1」、および 1 は異なる値になります。興味のある子供用ブーツは、自分で出力を試してみることができます。
拡張知識: 型なし定数
Go 言語の定数には、何か珍しい点があります。定数には、int や float64 などの明確な基になる型、または time.Duration などの基本型を持つことができますが、多くの定数には明示的な基になる型がありません。
コンパイラは、明示的な基礎となる型を持たないこれらの数値定数に対して、基礎となる型よりも高精度の算術演算を提供します。少なくとも 256 ビットの演算精度があると考えられます。型なしの定数型には、型なしのブール値、型なしの整数、型なしの文字、型なしの浮動小数点数、型なしの複素数、および型なしの文字列の 6 種類があります。
定数の特定の型を延期することにより、演算精度が高くなるだけでなく、明示的な型変換を行わずに、より多くの式で直接使用できるようになります。
[例 1] math.Pi は、浮動小数点数または複素数が必要な場合に直接使用できる型なし浮動小数点定数です。
var x float32 = math.Pi var y float64 = math.Pi var z complex128 = math.Pi
If math.Pi は次のように決定されます。特定の型である必要があります。たとえば、float64 が使用されている場合、結果の精度が異なる場合があります。同時に、float32 または complex128 型の値が必要な場合は、明確な強制型変換が必要です:
const Pi64 float64 = math.Pi var x float32 = float32(Pi64) var y float64 = Pi64 var z complex128 = complex128(Pi64)
[関連する推奨事項: Go ビデオ チュートリアル 、プログラミング教育 ]
以上がGo言語には定数の種類は何種類あるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。