像 fmt、os 等這樣具有常用功能的內建套件在Go 語言中有150 個以上,它們被稱為標準庫,大部分(一些底層的除外)內建於Go 本身。完整清單可以在 Go Walker 查看。 (建議學習:go)
unsafe: 包含了一些在 C/C程序的調用中。
syscall-os-os/exec:os: 提供給我們一個平台無關性的作業系統功能接口,採用類Unix設計,隱藏了不同作業系統間差異,讓不同的檔案系統和作業系統對象表現一致。
os/exec: 提供我們執行外部作業系統指令和程式的方式。 syscall: 底層的外部套件,提供了作業系統底層呼叫的基本介面。
透過一個 Go 程式讓Linux重啟來體現它的能力。
package main import ( "syscall" ) const LINUX_REBOOT_MAGIC1 uintptr = 0xfee1dead const LINUX_REBOOT_MAGIC2 uintptr = 672274793 const LINUX_REBOOT_CMD_RESTART uintptr = 0x1234567 func main() { syscall.Syscall(syscall.SYS_REBOOT, LINUX_REBOOT_MAGIC1, LINUX_REBOOT_MAGIC2, LINUX_REBOOT_CMD_RESTART) }
archive/tar 和 /zip-compress:壓縮(解壓縮)檔案功能。
fmt-io-bufio-path/filepath-flag:
fmt: 提供了格式化輸入輸出功能。
io: 提供了基本輸入輸出功能,大多數是圍繞系統功能的封裝。
bufio: 緩衝輸入輸出功能的封裝。
path/filepath: 用來操作在目前系統中的目標檔名路徑。
flag: 對命令列參數的操作。
strings-strconv-unicode-regexp-bytes:
strings: 提供字串的運算。
strconv: 提供將字串轉換為基礎類型的功能。
unicode: 為 unicode 型的字串提供特殊的功能。
regexp: 正規表示式功能。
bytes: 提供字元型分片的操作。
index/suffixarray: 子字串快速查詢。
math-math/cmath-math/big-math/rand-sort:
math: 基本的數學函數。
math/cmath: 對複數的運算。
math/rand: 偽隨機數產生。
sort: 為陣列排序和自訂集合。
math/big: 大數的實作與計算。
container-/list-ring-heap: 實作對集合的運算。
list: 雙鍊錶。
ring: 環形鍊錶。
以上是golang 哪些功能用標準函式庫的詳細內容。更多資訊請關注PHP中文網其他相關文章!