Go語言的rune和byte的區別

2021-10-22 05:38:08 字數 551 閱讀 2508

go語言中支援兩個字元型別,乙個是

byte

(實際上是

uint8

的別名),代表

utf-8

字串的

單個位元組的值,用來儲存ascii碼;另乙個是

rune(uint32)

,代表單個

unicode字元,常用來處理unicode或utf-8字元(一切字元)

。 關於rune

相關的操作,可查閱

go標準庫的

unicode

包。另外

unicode/utf8

包也提供了u

tf8和

unicode

之間的轉換。

出於簡化語言的考慮,

go語言的多數

api都假設字串為

utf-8編碼,在unicode中,乙個中文佔兩個位元組,utf-8中乙個中文佔三個位元組,golang預設的編碼是utf-8編碼,因此預設乙個中文佔三個位元組

。儘管unicode

字元在標準庫中有支援,但實際上較少使用。

Go語言中byte型別和rune型別(五)

go語言中字串需要使用用雙引號,而單引號用來表示單個的字元,字元也是組成字串的元素。go語言的字元有兩種 uint8型別,或者叫 byte 型,代表了ascii碼的乙個字元。rune型別,代表乙個utf 8字元。ascii編碼是1個位元組,而utf 8是可變長的編碼,當要表示中文等非ascll編碼的...

go語言中int和byte轉換

主機位元組序模式有兩種,大端資料模式和小端資料模式,在網路程式設計中應注意這兩者的區別,以保證資料處理的正確性 例如網路的資料是以大端資料模式進行互動,而我們的主機大多數以小端模式處理,如果不轉換,資料會混亂 參考 一般來說,兩個主機在網路通訊需要經過如下轉換過程 主機位元組序 網路位元組序 主機位...

go語言中int和byte轉換方式

主機位元組序 主機位元組序模式有兩種,大端資料模式和小端資料模式,在網路程式設計中應注意這兩者的區別,以保證資料處理的正確性 例如網路的資料是以大端資料模式進行互動,而我們的主機大多數以小端模式處理,如果不轉換,資料會混亂 參考 一般來說,兩個主機在網路通訊需要經過如下轉換過程 主機位元組序 網路位...