ไป - ประเภทข้อมูล

ในภาษาการเขียนโปรแกรม Go ชนิดข้อมูลหมายถึงระบบที่กว้างขวางที่ใช้สำหรับการประกาศตัวแปรหรือฟังก์ชันประเภทต่างๆ ประเภทของตัวแปรจะกำหนดพื้นที่ที่ใช้ในหน่วยเก็บข้อมูลและวิธีการตีความรูปแบบบิตที่จัดเก็บ

ประเภทของ Go สามารถแบ่งได้ดังนี้ -

ซีเนียร์ ประเภทและรายละเอียด
1

Boolean types

เป็นประเภทบูลีนและประกอบด้วยค่าคงที่ที่กำหนดไว้ล่วงหน้าสองค่า: (a) true (b) false

2

Numeric types

เป็นประเภทเลขคณิตอีกครั้งและแสดงถึง a) ประเภทจำนวนเต็มหรือ b) ค่าทศนิยมตลอดทั้งโปรแกรม

3

String types

ประเภทสตริงแสดงถึงชุดของค่าสตริง ค่าของมันคือลำดับไบต์ สตริงเป็นประเภทที่ไม่เปลี่ยนรูปซึ่งเมื่อสร้างขึ้นแล้วจะไม่สามารถเปลี่ยนเนื้อหาของสตริงได้ ประเภทสตริงที่ประกาศไว้ล่วงหน้าคือสตริง

4

Derived types

ซึ่งรวมถึง (a) ประเภทตัวชี้ (b) ประเภทอาร์เรย์ (c) ประเภทโครงสร้าง (d) ประเภทสหภาพและ (e) ประเภทฟังก์ชัน f) ประเภทสไลซ์ g) ประเภทอินเตอร์เฟส h) ประเภทแผนที่ i) ประเภทช่องสัญญาณ

ประเภทอาร์เรย์และประเภทโครงสร้างเรียกรวมกันว่า aggregate types. ประเภทของฟังก์ชันระบุชุดของฟังก์ชันทั้งหมดที่มีพารามิเตอร์และประเภทผลลัพธ์เดียวกัน เราจะพูดถึงประเภทพื้นฐานในส่วนต่อไปนี้ในขณะที่ประเภทอื่น ๆ จะกล่าวถึงในบทต่อ ๆ ไป

ประเภทจำนวนเต็ม

ประเภทจำนวนเต็มที่ไม่ขึ้นกับสถาปัตยกรรมที่กำหนดไว้ล่วงหน้าคือ -

ซีเนียร์ ประเภทและรายละเอียด
1

uint8

จำนวนเต็ม 8 บิตที่ไม่ได้ลงนาม (0 ถึง 255)

2

uint16

จำนวนเต็ม 16 บิตที่ไม่ได้ลงชื่อ (0 ถึง 65535)

3

uint32

จำนวนเต็ม 32 บิตที่ไม่ได้ลงชื่อ (0 ถึง 4294967295)

4

uint64

จำนวนเต็ม 64 บิตที่ไม่ได้ลงชื่อ (0 ถึง 18446744073709551615)

5

int8

ลงนามจำนวนเต็ม 8 บิต (-128 ถึง 127)

6

int16

ลงนามจำนวนเต็ม 16 บิต (-32768 ถึง 32767)

7

int32

ลงนามจำนวนเต็ม 32 บิต (-2147483648 ถึง 2147483647)

8

int64

ลงนามเลขจำนวนเต็ม 64 บิต (-9223372036854775808 ถึง 9223372036854775807)

ประเภทลอย

ประเภทโฟลตที่ไม่ขึ้นกับสถาปัตยกรรมที่กำหนดไว้ล่วงหน้าคือ -

ซีเนียร์ ประเภทและรายละเอียด
1

float32

ตัวเลขทศนิยม 32 บิต IEEE-754

2

float64

ตัวเลขทศนิยม 64 บิต IEEE-754

3

complex64

จำนวนเชิงซ้อนที่มีส่วนจริงและส่วนจินตภาพ float32

4

complex128

จำนวนเชิงซ้อนที่มีส่วนจริงและส่วนจินตภาพของ float64

ค่าของจำนวนเต็ม n บิตคือ n บิตและแสดงโดยใช้การคำนวณทางคณิตศาสตร์เสริมของสองค่า

ประเภทตัวเลขอื่น ๆ

นอกจากนี้ยังมีชุดประเภทตัวเลขที่มีขนาดเฉพาะการใช้งาน -

ซีเนียร์ ประเภทและรายละเอียด
1

byte

เหมือนกับ uint8

2

rune

เช่นเดียวกับ int32

3

uint

32 หรือ 64 บิต

4

int

ขนาดเดียวกับ uint

5

uintptr

จำนวนเต็มที่ไม่ได้ลงชื่อเพื่อเก็บบิตที่ไม่ได้ตีความของค่าตัวชี้