亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Golang unicode 字符值

Golang unicode 字符值

Go
郎朗坤 2023-05-22 15:38:05
我運行此代碼并獲得輸出,但為什么字節值為 E4B8AD 而 int 值為 20013。為什么第 2 列不等于第 5 列?包主import(    "fmt")func main(){    str2 := "中文"    fmt.Println("index int(rune) rune char bytes")    for index, rune := range str2{        fmt.Printf("%-2d      %d       %U '%c' %X\n", index, rune, rune, rune, []byte(string(rune)))    }}輸出是:index int(rune) rune char bytes0      20013       U+4E2D '中' E4B8AD1      25991       U+6587 '文' E69687
查看完整描述

1 回答

?
POPMUISE

TA貢獻1765條經驗 獲得超5個贊

字符的 Unicode 代碼點不一定與給定字符編碼中該字符的字節表示相同。

對于字符,代碼點是U+4E2D,但是各種字符編碼中的字節表示是:

  • E4B8AD(UTF-8)

  • 4E2D(UTF-16)

  • 00004E2D(UTF-32)

查看完整回答
反對 回復 2023-05-22
  • 1 回答
  • 0 關注
  • 149 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號