In Go gibt es drei Arten von numerischen Typen: 1. Ganzzahltypen, die in plattformunabhängige Ganzzahltypen und plattformbezogene Ganzzahltypen unterteilt werden können. Der Unterschied besteht darin, ob die Länge unter verschiedenen CPU-Architekturen oder Betriebssystemen konsistent ist. 2. Gleitkommatypen können in float32 und float64 unterteilt werden, die den numerischen Gleitkommatypen mit einfacher und doppelter Genauigkeit in IEEE754 entsprechen. 3. Komplexe Zahlen können in zwei Typen unterteilt werden: complex128 (reelle und imaginäre 64-Bit-Zahlen) und complex64 (reelle und imaginäre 32-Bit-Zahlen). Complex128 ist der Standardtyp für komplexe Zahlen.
Die Betriebsumgebung dieses Tutorials: Windows 7-System, GO Version 1.18, Dell G3-Computer.
Zu den grundlegenden Datentypen im Go-Sprachsystem gehören im Allgemeinen numerische Typen und Zeichenfolgentypen.
Und Zahlenwerttypen können in die folgenden Typen unterteilt werden: Ganzzahlen, Gleitkommazahlen und komplexe Zahlen, von denen jeder numerische Typen unterschiedlicher Größe enthält. Zu den vorzeichenbehafteten Ganzzahlen gehören beispielsweise int8, int16, int32, int64. usw. Jeder numerische Typ bestimmt den entsprechenden Größenbereich und ob er positive und negative Vorzeichen unterstützt.
Ganzzahlen (Ganzzahltypen) der Go-Sprache
In der Go-Sprache werden Ganzzahlen in plattformunabhängige Ganzzahlen und plattformbezogene Ganzzahlen unterteilt. Der Hauptunterschied besteht darin, dass diese Ganzzahltypen unter verschiedenen CPU-Architekturen oder Betriebssystemen funktionieren. , ob ihre Längen konsistent sind.Plattformunabhängige Ganzzahlen
Die unabhängigen Ganzzahlen unterscheiden zwischen vorzeichenbehafteten und vorzeichenlosen Ganzzahlen, und die Datenbereiche, die sie darstellen, sind unterschiedlich.Plattformbezogene Ganzzahltypen
Go bietet nativ drei plattformbezogene Ganzzahltypen, nämlich int, uint und uintptr. Besonderer Hinweis: Verlassen Sie sich beim Schreiben von Code mit Portabilitätsanforderungen nie zu sehr auf die Länge dieser Typen.func main() { var a, b = int(5), uint(6) var p uintptr = 0x12345678 fmt.Println("signed integer a's length is", unsafe.Sizeof(a)) fmt.Println("unsigned integer b's length is", unsafe.Sizeof(b)) fmt.Println("uintptr's length is", unsafe.Sizeof(p)) } // 打印输出 signed integer a's length is 8 unsigned integer b's length is 8 uintptr's length is 8
func main() { var a int8 = 66 fmt.Printf("%b\n", a) //输出二进制:1000010 fmt.Printf("%d\n", a) //输出十进制:66 fmt.Printf("%o\n", a) //输出八进制:102 fmt.Printf("%O\n", a) //输出八进制(带0o前缀):0o102 fmt.Printf("%x\n", a) //输出十六进制(小写):42 fmt.Printf("%X\n", a) //输出十六进制(大写):42 }
Gleitkommatyp der Go-Sprache (Dezimaltyp)
Die Sprache Go bietet zwei Gleitkommatypen, float32 und float64, die jeweils den numerischen Gleitkommatypen mit einfacher und doppelter Genauigkeit in IEEE754 entsprechen entspricht im Wesentlichen den Float- und Double-Typen in Java. Die Go-Sprache bietet zwei Möglichkeiten zur Darstellung von Gleitkommatypen: Dezimaltyp und wissenschaftliche Notation. Die wissenschaftliche Notation ist in zwei Darstellungsmethoden unterteilt: dezimal und hexadezimal.3.1415 .15 // 整数部分如果为0,整数部分可以省略不写 81.80 82. // 小数部分如果为0,小数点后的0可以省略不写
Wissenschaftliche Schreibweise
十进制表示法: 6674.28e-2 // 6674.28 * 10^(-2) = 66.742800 .12345E+5 // 0.12345 * 10^5 = 12345.000000 十六进制表示法: 0x2.p10 // 2.0 * 2^10 = 2048.000000 0x1.Fp+0 // 1.9375 * 2^0 = 1.937500
var f float64 = 112.676899 // 浮点类型第一种:十进制表示法 fmt.Printf("%f\n", f) // 112.676899 // 浮点类型第二种:科学计数法--十进制表示法 fmt.Printf("%e\n", f) // 1.126769e+02 // 浮点类型第二种:科学计数法--十六进制表示法 fmt.Printf("%x\n", f) // 0x1.c2b52502eec7dp+06
Go bietet drei Darstellungsmethoden:
1. Initialisieren Sie eine komplexe Typvariable direkt mit einem komplexen Literalwertvar c = 5 + 7i var d = 0o123 + .12345E+5i // 83+12345i
var c = complex(5, 6) // 5 + 6i var d = complex(0o123, .12345E+5) // 83+12345i
var c = complex(5, 6) // 5 + 6i r := real(c) // 5.000000 i := imag(c) // 6.000000
type NewInt int32
Go-Video-Tutorial
,Programmierunterricht】
Das obige ist der detaillierte Inhalt vonWie viele numerische Typen gibt es in Go?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!