GO言語のデータ型は次のとおりです。1。ブール型; 2.数値タイプ(整数と浮動小数点タイプに分割できます); 3.文字列タイプ; 4.ポインタータイプ; 5.配列タイプ。 6. 構造化タイプ; 7. チャネルタイプ; 8. ファンクションタイプ; 9. スライスタイプ; 10. インターフェースタイプ; 11. マップタイプ。
このチュートリアルの動作環境: Windows 10 システム、GO 1.11.2、Dell G3 コンピューター。
Go 言語は静的に型付けされたプログラミング言語であり、Go プログラミング言語では、データ型を使用して関数と変数を宣言します。データ型の登場は、データを必要なメモリサイズの異なるデータに分割することであり、プログラミングの際、大きなデータを使用する必要がある場合にのみ大きなメモリを申請することで、メモリを最大限に活用することができます。コンパイラーはコンパイル時に、各値の型を認識している必要があります。これにより、コンパイラーは、この値に割り当てるメモリーの量と、この割り当てられたメモリーが何を表すかを認識できるようになります。
Description | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
32 ビットまたは 64 ビット | |||||||||||
符号なし 8ビット整数型(0~255) | |||||||||||
符号なし16ビット整数型(0~65535) | |||||||||||
符号なし 32 ビット整数型 (0 ~ 4294967295) | |||||||||||
符号なし 64 ビット整数型 (0 ~ 18446744073709551615) | |||||||||||
32 ビットまたは 64 ビット | |||||||||||
符号付き 8 ビット整数 (- 128 ~ 127) | |||||||||||
符号付き 16 ビット整数 (-32768 ~ 32767) | |||||||||||
符号付き 32 ビット整数 (-2147483648 ~ 2147483647) | |||||||||||
符号付き 64 ビット整数 (-9223372036854775808 ~ 9223372036854775807) | |||||||||||
uint8 エイリアス (タイプ byte = uint8) | |||||||||||
int32 エイリアス (タイプ rune = int32)、を表します。 Unicode コード | |||||||||||
符号なし整数型。ポインタの格納に使用されます。特定のビットのサイズは指定されていませんが、ポインタを収容するには十分な大きさです。 | uintptr 型は、特に Go 言語が C 言語関数ライブラリまたはオペレーティング システム インターフェイスと対話する場合の、低レベル プログラミングでのみ必要です。|||||||||||
##float64 | |||||||||||
complex64 | |||||||||||
complex128 | |||||||||||
整数型整数データは ## の 2 つのカテゴリに分類されます。 #Signed: int, int8, int16, int32, int64 Unsigned: uint, uint8, uint16, uint32, uint64, byteDifferent bits 整数間の違い数値の型は、整数範囲のサイズを格納できることです。 浮動小数点型浮動小数点型は 10 進数型であり、10 進数を格納できます。例: 6.6、-12.341. マシン内の浮動小数点数の格納形式の簡単な説明. 浮動小数点数 = 符号ビット、指数ビット、仮数ビット2。仮数部が失われ、精度が損なわれる可能性があります。 -123.0000901package main import "fmt" func main() { var num1 float32 = -123.0000901 var num2 float64 = -123.0000901 fmt.Println("num1 = ", num1, "num2 = ", num2); } ログイン後にコピー Golang には特別な文字タイプ はありません 単一の文字 (文字) を保存したい場合、一般的には byte を使用して保存します。 文字列は、固定長の文字で接続された一連の文字です。 Go の文字列はシングルバイトで接続されています。つまり、従来の文字列は文字で構成されていますが、Go の文字列は異なり、バイト で構成されています。
package main import "fmt" func main() { //字符只能被单引号包裹,不能用双引号,双引号包裹的是字符串 var c1 byte = 'a' var c2 byte = '0' //当我们直接输出type值时,就是输出了对应字符的ASCII码值 //'a' ==> 97 fmt.Println(c1, "--", c2) //如果我们希望输出对应字符,需要使用格式化输出 fmt.Printf("c2 = %c c2 = %c", c1, c2) } ログイン後にコピー 文字型の本質に関する議論
Go では文字列は不変です。 #2. 文字列の 2 つの識別形式
var str string = `abc\nabc` //输出时原样输出,不会转义 ログイン後にコピー var str string = "hello " + "world" str += "!" ログイン後にコピー ##基本データ型、変数は値を格納します (値型とも呼ばれます) 変数のアドレスを取得するには、var num int などの & を使用してアドレスを取得します。番号:&num指针类型,指针变量存的是一个地址,这个地址指向的空间存的才是值,比如:var ptr *int = &num 获取指针类型所指向的值,使用:*,比如,var ptr *int,使用*ptr获取ptr指向的值 值类型,都有对应的指针类型,形式为*数据类型,比如int对应的指针就是*int,float64对应的指针类型就是*float64,依此类推。 值类型包括:基本数据类型、数组和结构体struct 值类型:基本数据类型(int系列、float系列、bool、string)、数组和结构体 引用类型:指针、slice切片、map、管道chan、interface等都是引用类型 数据类型 | 默认值 | 整型 | 0 | 浮点型 | 0 | 字符串 | "" | 布尔类型 | false | package main import "fmt" func main() { var a int var b float32 var isTrue bool var str string //这里的%v,表示按照变量的值输出 fmt.Printf("a = %v, b = %v, isTrue = %v, str = %v", a, b, isTrue, str) fmt.Println("") } ログイン後にコピー |
以上がGo言語にはどのようなデータ型がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。