วิธีการใช้ค่าคงที่ใน Golang
ค่าคงที่หรือ Const ใน Golang คืออะไร? นี่คือสิ่งที่คุณจำเป็นต้องรู้เกี่ยวกับการใช้ค่าคงที่ใน Go
ประเภทข้อมูลระบุประเภทข้อมูลที่ ตัวแปร Golangที่ถูกต้อง สามารถมี ได้ ในภาษา Go ประเภทจะถูกแบ่งออกเป็นสี่ประเภทดังต่อไปนี้:
ที่นี่เราจะหารือเกี่ยวกับประเภทข้อมูลพื้นฐานในภาษา Go แบ่งเป็น 3 หมวดหมู่ย่อย:
ชนิดข้อมูลทั่วไปใน Golang
ในภาษา Go ตัวเลขจะถูกแบ่งออกเป็น 3 หมวดหมู่ย่อย:
จำนวนเต็ม: ในภาษา Go จำนวนเต็มทั้งแบบมีเครื่องหมายและไม่มีเครื่องหมายจะมีสี่ขนาดที่แตกต่างกัน ดังแสดงในตารางด้านล่าง เลขจำนวนเต็มที่มีเครื่องหมายจะแสดงโดยint
และเลขจำนวนเต็มที่ไม่มีเครื่องหมายจะแสดงuint
โดย
การดำเนินการทางคณิตศาสตร์ที่เป็นไปได้: การบวก การลบ การคูณ การหาร เศษเหลือ
ประเภทข้อมูล |
อธิบาย |
อินท์8 | เลขจำนวนเต็มที่มีเครื่องหมาย 8 บิต |
อินท์16 | เลขจำนวนเต็มที่มีเครื่องหมาย 16 บิต |
อินท์32 | จำนวนเต็มที่มีเครื่องหมาย 32 บิต |
int64 | จำนวนเต็มที่มีเครื่องหมาย 64 บิต |
ยูอินต์8 | จำนวนเต็มไม่มีเครื่องหมาย 8 บิต |
16 มิ.ย. | จำนวนเต็ม 1 6 บิตที่ไม่มีเครื่องหมาย |
ยูอินท์32 | จำนวนเต็มไม่มีเครื่องหมาย 32 บิต |
ยูอินท์64 | จำนวนเต็มไม่มีเครื่องหมาย 64 บิต |
ภายใน | ทั้งแบบไม่มีเครื่องหมายและมีเครื่องหมายมีขนาดเท่ากันคือ 32 หรือ 64 บิต |
ยูอินท์ | ทั้งแบบไม่มีเครื่องหมายและมีเครื่องหมายมีขนาดเท่ากันคือ 32 หรือ 64 บิต |
รูน | นี่เป็นคำพ้องความหมายสำหรับ int32 และยังแสดงถึงจุดโค้ด Unicode อีกด้วย |
ไบต์ | นี่คือคำพ้องความหมายสำหรับ uint8 |
ยูอินท์พีทีอาร์ | นี่เป็นประเภทจำนวนเต็มแบบไม่มีเครื่องหมาย ความกว้างนั้นไม่มีการกำหนด แต่สามารถเก็บบิตของค่าตัวชี้ทั้งหมดได้ |
ตัวอย่างเช่น:
// Chương trình Go sử dụng số nguyên
package main
import "fmt"
func main() {
// Dùng 8-bit unsigned int
var X uint8 = 225
fmt.Println(X, X-3)
// Dùng 16-bit signed int
var Y int16 = 32767
fmt.Println(Y+2, Y-2)
}
ผลลัพธ์:
225 222
-32767 32765
ตัวอย่างการดำเนินการทางคณิตศาสตร์:
// Các phép tính số học có thể có đối với số nguyên
// Tác giả : Chhanda Saha
package main
import "fmt"
func main() {
var x int16 = 170
var y int16 = 83
//Cộng
fmt.Printf(" addition : %d + %d = %d\n ", x, y, x+y)
//Trừ
fmt.Printf("subtraction : %d - %d = %d\n", x, y, x-y)
//Nhân
fmt.Printf(" multiplication : %d * %d = %d\n", x, y, x*y)
//Chia
fmt.Printf(" division : %d / %d = %d\n", x, y, x/y)
//Mô đun
fmt.Printf(" remainder : %d %% %d = %d\n", x, y, x%y)
}
ผลลัพธ์:
Cộng : 170 + 83 = 253
Trừ : 170 - 83 = 87
Nhân : 170 * 83 = 14110
Chia : 170 / 83 = 2
Số dư : 170 % 83 = 4
ประเภทข้อมูล |
อธิบาย |
ลอย32 | ตัวเลขจุดลอยตัว IEEE 754 32 บิต |
ลอย64 | ตัวเลขจุดลอยตัว IEEE 754 64 บิต |
ตัวอย่างเช่น:
//Minh họa chương trình Go dùng số dấu chấm động
package main
import "fmt"
func main() {
a := 20.45
b := 34.89
// Phép trừ hai số dấu chấm động
c := b-a
// Hiện kết quả
fmt.Printf("Result is: %f", c)
// Hiện kiểu biến C
fmt.Printf("\nThe type of c is : %T", c)
}
ผลลัพธ์:
Kết quả: 14.440000
Kiểu của C là : float64
ตัวอย่างการดำเนินการทางคณิตศาสตร์สำหรับจำนวนจุดลอยตัว:
// Các phép toán số học có thể có cho số thực
// Tác giả : Chhanda Saha
package main
import "fmt"
func main() {
var x float32 = 5.00
var y float32 = 2.25
//Phép cộng
fmt.Printf("addition : %g + %g = %g\n ", x, y, x+y)
//Phép trừ
fmt.Printf("subtraction : %g - %g = %g\n", x, y, x-y)
//Phép nhân
fmt.Printf("multiplication : %g * %g = %g\n", x, y, x*y)
//Phép chia
fmt.Printf("division : %g / %g = %g\n", x, y, x/y)
}
ผลลัพธ์:
Phép cộng : 5 + 2.25 = 7.25
Phép trừ : 5 - 2.25 = 2.75
Phép nhân : 5 * 2.25 = 11.25
Phép chia : 5 / 2.25 = 2.2222223
float32
และfloat64
ยังเป็นส่วนหนึ่งของตัวเลขเชิงซ้อนเหล่านี้ด้วย ฟังก์ชันการอินทิเกรตจะสร้างตัวเลขเชิงซ้อนจากส่วนจินตภาพและส่วนจริง และฟังก์ชันการอินทิเกรตจะแยกส่วนเหล่านั้นออกมา
ประเภทข้อมูล |
อธิบาย |
คอมเพล็กซ์64 | ตัวเลขเชิงซ้อนมี float32 เป็นส่วนประกอบจริงและจินตภาพ |
คอมเพล็กซ์128 | ตัวเลขเชิงซ้อนประกอบด้วย float64 เป็นส่วนประกอบจริงและจินตภาพ |
ตัวอย่างเช่น:
// Chương trình Go dùng số phức
package main
import "fmt"
func main() {
var a complex128 = complex(6, 2)
var b complex64 = complex(9, 2)
fmt.Println(a)
fmt.Println(b)
// Hiện kiểu
fmt.Printf("The type of a is %T and "+
"the type of b is %T", a, b)
}
ผลลัพธ์:
(6+2i)
(9+2i)
Kiểu của a là complex128, kiểu của b là complex64
ตัวอย่างฟังก์ชั่นในตัว:
// Các hàm tích hợp là số phức
// Tác giả : Chhanda Saha
package main
import "fmt"
func main() {
comp1 := complex(10, 11)
// cú pháp init số phức
comp2 := 13 + 33i
fmt.Println("Complex number 1 is :", comp1)
fmt.Println("Complex number 1 is :", comp2)
// lấy phần real
realNum := real(comp1)
fmt.Println("Real part of complex number 1:", realNum)
// lấy phần hình ảnh
imaginary := imag(comp2)
fmt.Println("Imaginary part of complex number 2:", imaginary)
}
ผลลัพธ์:
Số phức 1 là: (10+11i)
Số phức 1 là: (13+33i)
Phần thực của số phức 1: 10
Phần ảo của số phức 2: 33
ประเภทข้อมูลบูลีนแสดงข้อมูลเพียงหนึ่งบิตที่เป็นจริงหรือเท็จ ค่าของประเภทบูลีนจะไม่ถูกแปลงเป็นประเภทอื่นโดยชัดเจนหรือโดยปริยาย
ตัวอย่างเช่น:
//Minh họa chương trình dùng boolean
package main
import "fmt"
func main() {
// Các biến
str1 := "Quantrimang"
str2:= "quantrimang"
str3:= "Quantrimang"
result1:= str1 == str2
result2:= str1 == str3
// Hiện kết quả
fmt.Println( result1)
fmt.Println( result2)
// Hiện kiểu của result1 và result2
fmt.Printf("Kiểu của result1 là %T và "+
"kiểu của result2 là %T",
result1, result2)
}
ผลลัพธ์:
false
true
Kiểu của result1 là bool và kiểu của result2 là bool
ประเภทข้อมูลสตริงแสดงลำดับของจุดรหัส Unicode กล่าวอีกนัยหนึ่งเราสามารถกล่าวได้ว่าสตริงเป็นลำดับไบต์ที่ไม่เปลี่ยนแปลง ซึ่งหมายความว่า เมื่อสร้างสตริงแล้ว คุณไม่สามารถเปลี่ยนแปลงมันได้ สตริงสามารถมีข้อมูลที่กำหนดเองได้ รวมถึงไบต์ค่าศูนย์ในรูปแบบที่มนุษย์อ่านได้ สามารถต่อสตริงเข้าด้วยกันได้โดยใช้ตัวดำเนินการบวก (+)
ตัวอย่างเช่น:
// Chương trình Go dùng chuỗi
package main
import "fmt"
func main() {
// Biến str chứa chuỗi
str := "Quantrimang"
// Hiện độ dài của chuỗi
fmt.Printf("Length of the string is:%d",
len(str))
// Hiện chuỗi
fmt.Printf("\nString is: %s", str)
// Hiện kiểu biến str
fmt.Printf("\nType of str is: %T", str)
}
ผลลัพธ์:
Chiều dài của chuỗi là: 13
Chuỗi là: Quantrimang
Kiểu của chuỗi là: chuỗi
ตัวอย่างของการเรียงสตริง:
// Nối chuỗi
// Tác giả : Chhanda Saha
package main
import "fmt"
func main() {
var str1 string = "STRING_"
var str2 string = "Concatenation"
// Nối chuỗi bằng toán tử +
fmt.Println("New string : ", str1+str2)
}
ผลลัพธ์:
New string : STRING_Concatenation
ค่าคงที่หรือ Const ใน Golang คืออะไร? นี่คือสิ่งที่คุณจำเป็นต้องรู้เกี่ยวกับการใช้ค่าคงที่ใน Go
ฟังก์ชัน Variadic ใน Go ช่วยให้คุณสามารถส่งอาร์กิวเมนต์จำนวนไม่แน่นอนไปยังฟังก์ชันได้ นี่คือทุกสิ่งที่คุณจำเป็นต้องทราบเกี่ยวกับฟังก์ชันผันผวนใน Golang
ใน Golang พารามิเตอร์การส่งคืนที่มีชื่อมักเรียกว่าพารามิเตอร์ที่มีชื่อ Golang อนุญาตให้ตั้งชื่อพารามิเตอร์ที่ส่งกลับหรือผลลัพธ์ของฟังก์ชันในลายเซ็นหรือคำจำกัดความของฟังก์ชัน
คำหลัก - คำหลักคือคำในภาษาที่ใช้สำหรับกระบวนการภายในบางอย่างหรือแสดงถึงการดำเนินการที่กำหนดไว้ล่วงหน้า นี่คือสิ่งที่คุณจำเป็นต้องทราบเกี่ยวกับคีย์เวิร์ดใน Golang
Go รองรับสองวิธีหลักในการส่งอาร์กิวเมนต์: ส่งตามค่าและส่งตามการอ้างอิง Go จะใช้ค่า pass by ตามค่าเริ่มต้น
ในภาษา Go คุณได้รับอนุญาตให้ส่งคืนค่าหลายค่าจากฟังก์ชันโดยใช้คำสั่ง return กล่าวอีกนัยหนึ่ง ในฟังก์ชัน คำสั่ง return สามารถส่งคืนค่าได้หลายค่า
Golang เช่นเดียวกับภาษาการเขียนโปรแกรมอื่นๆ ส่วนใหญ่ก็มีคำสั่ง switch วิธีใช้คำสั่ง switch ใน Golang มีดังนี้
ในบทความนี้ เราจะเรียนรู้วิธีใช้เคสเริ่มต้นเพื่อหลีกเลี่ยงการหยุดชะงัก ก่อนอื่นเรามาดูก่อนว่า deadlock case เกิดขึ้นเมื่อใช้คำสั่ง Golang select อย่างไร
โครงสร้างที่ไม่ระบุชื่อใน Golang เป็นโครงสร้างชั่วคราวที่ไม่มีการใช้ชื่อเพื่อวัตถุประสงค์เพียงครั้งเดียว ในขณะที่ฟิลด์ที่ไม่ระบุชื่ออนุญาตให้ฝังฟิลด์ที่ไม่มีชื่อได้
ตัวดำเนินการช่วยให้เราสามารถดำเนินการประเภทต่างๆ กับตัวดำเนินการได้ ในภาษา Go ตัวดำเนินการสามารถจำแนกประเภทได้ตามฟังก์ชันที่แตกต่างกัน
_(ขีดล่าง) ใน Golang เรียกว่า Blank Identifier ตัวระบุคือชื่อที่ผู้ใช้กำหนดสำหรับส่วนประกอบของโปรแกรมซึ่งใช้เพื่อวัตถุประสงค์ในการระบุตัวตน
สวัสดีโลก! เป็นโปรแกรมพื้นฐานแรกในภาษาการเขียนโปรแกรมใด ๆ คุณสามารถเขียนโปรแกรมแรกนี้ใน Golang ได้โดยทำตามขั้นตอนด้านล่างนี้
Golang สามารถติดตั้งบน Windows ได้อย่างง่ายดาย ด้านล่างนี้เป็นคำแนะนำทีละขั้นตอนโดยละเอียดในการติดตั้ง Golang บน Windows
Golang อนุญาตให้สร้างวิธีการ 2 วิธีหรือมากกว่าที่มีชื่อเดียวกันในแพ็คเกจเดียวกัน แต่ตัวรับของวิธีการเหล่านี้จะต้องเป็นประเภทที่แตกต่างกัน
นักศึกษาจำเป็นต้องมีแล็ปท็อปเฉพาะทางสำหรับการเรียน ไม่เพียงแต่จะต้องมีพลังเพียงพอที่จะทำงานได้ดีในสาขาวิชาที่เลือกเท่านั้น แต่ยังต้องมีขนาดกะทัดรัดและน้ำหนักเบาพอที่จะพกพาไปได้ตลอดวัน
การเพิ่มเครื่องพิมพ์ลงใน Windows 10 เป็นเรื่องง่าย แม้ว่ากระบวนการสำหรับอุปกรณ์แบบมีสายจะแตกต่างจากอุปกรณ์ไร้สายก็ตาม
อย่างที่ทราบกันดีว่า RAM เป็นส่วนประกอบฮาร์ดแวร์ที่สำคัญมากในคอมพิวเตอร์ ทำหน้าที่เป็นหน่วยความจำในการประมวลผลข้อมูล และเป็นปัจจัยที่กำหนดความเร็วของแล็ปท็อปหรือพีซี ในบทความด้านล่างนี้ WebTech360 จะแนะนำวิธีการตรวจสอบข้อผิดพลาดของ RAM โดยใช้ซอฟต์แวร์บน Windows
สมาร์ททีวีเข้ามาครองโลกอย่างแท้จริง ด้วยคุณสมบัติที่ยอดเยี่ยมมากมายและการเชื่อมต่ออินเทอร์เน็ต เทคโนโลยีได้เปลี่ยนแปลงวิธีการชมทีวีของเรา
ตู้เย็นเป็นเครื่องใช้ไฟฟ้าที่คุ้นเคยในครัวเรือน ตู้เย็นโดยทั่วไปจะมี 2 ช่อง โดยช่องแช่เย็นจะมีขนาดกว้างขวางและมีไฟที่เปิดอัตโนมัติทุกครั้งที่ผู้ใช้งานเปิด ในขณะที่ช่องแช่แข็งจะแคบและไม่มีไฟส่องสว่าง
เครือข่าย Wi-Fi ได้รับผลกระทบจากปัจจัยหลายประการนอกเหนือจากเราเตอร์ แบนด์วิดท์ และสัญญาณรบกวน แต่ยังมีวิธีชาญฉลาดบางอย่างในการเพิ่มประสิทธิภาพเครือข่ายของคุณ
หากคุณต้องการกลับไปใช้ iOS 16 ที่เสถียรบนโทรศัพท์ของคุณ นี่คือคำแนะนำพื้นฐานในการถอนการติดตั้ง iOS 17 และดาวน์เกรดจาก iOS 17 เป็น 16
โยเกิร์ตเป็นอาหารที่ยอดเยี่ยม กินโยเกิร์ตทุกวันดีจริงหรือ? เมื่อคุณกินโยเกิร์ตทุกวัน ร่างกายจะเปลี่ยนแปลงไปอย่างไรบ้าง? ลองไปหาคำตอบไปด้วยกัน!
บทความนี้จะกล่าวถึงประเภทของข้าวที่มีคุณค่าทางโภชนาการสูงสุดและวิธีเพิ่มประโยชน์ด้านสุขภาพจากข้าวที่คุณเลือก
การกำหนดตารางเวลาการนอนและกิจวัตรประจำวันก่อนเข้านอน การเปลี่ยนนาฬิกาปลุก และการปรับเปลี่ยนการรับประทานอาหารเป็นมาตรการบางประการที่จะช่วยให้คุณนอนหลับได้ดีขึ้นและตื่นนอนตรงเวลาในตอนเช้า
ขอเช่าหน่อยคะ! Landlord Sim เป็นเกมจำลองมือถือบน iOS และ Android คุณจะเล่นเป็นเจ้าของอพาร์ทเมนท์และเริ่มให้เช่าอพาร์ทเมนท์โดยมีเป้าหมายในการอัพเกรดภายในอพาร์ทเมนท์ของคุณและเตรียมพร้อมสำหรับผู้เช่า
รับรหัสเกม Bathroom Tower Defense Roblox และแลกรับรางวัลสุดน่าตื่นเต้น พวกเขาจะช่วยคุณอัพเกรดหรือปลดล็อคหอคอยที่สร้างความเสียหายได้มากขึ้น
มาเรียนรู้เรื่องโครงสร้าง สัญลักษณ์ และหลักการทำงานของหม้อแปลงแบบแม่นยำที่สุดกันดีกว่า
ตั้งแต่คุณภาพของภาพและเสียงที่ดีขึ้นไปจนถึงการควบคุมด้วยเสียงและอื่นๆ อีกมากมาย คุณสมบัติที่ขับเคลื่อนด้วย AI เหล่านี้ทำให้สมาร์ททีวีดีขึ้นมาก!
ในตอนแรกผู้คนมีความหวังสูงกับ DeepSeek ในฐานะแชทบอท AI ที่ทำการตลาดในฐานะคู่แข่งที่แข็งแกร่งของ ChatGPT จึงรับประกันถึงความสามารถและประสบการณ์การแชทอันชาญฉลาด