首頁 > 後端開發 > Golang > 如何安全地將 Go 字串分配給位元組數組?

如何安全地將 Go 字串分配給位元組數組?

Patricia Arquette
發布: 2024-12-16 09:00:25
原創
744 人瀏覽過

How to Safely Assign a Go String to a Byte Array?

Go 中將字串賦值給位元組陣列

Go 中,將字串賦值給位元組陣列可以用多種方法完成。常見的方法是使用 []byte(str) 語法將字串轉換為位元組切片。但是,此方法不是類型安全的,可能會導致資料損壞或意外行為。

推薦方法:直接轉換

一種安全且簡單的轉換方法字串到位元組數組是直接使用[]byte() 類型轉換,如下例所示:

[]byte("Here is a string....")
登入後複製

此方法使用字串的內容建立一個位元組數組,確保類型安全並防止潛在問題。

其他方法:

  • 使用範圍循環:

    var arr [20]byte
    str := "abc"
    for k, v := range []byte(str) {
    arr[k] = byte(v)
    }
    登入後複製
  • 使用複製功能:

    var arr [20]byte
    str := "abc"
    copy(arr[:], []byte(str))
    登入後複製
  • 使用字串運算:

    var arr [20]byte
    str := "abc"
    for i := range []byte(str) {
    arr[i] = []byte(str)[i]
    }
    登入後複製

但是,這些方法並不像直接轉換方法那麼簡單和型別安全。對於大多數場景,建議直接使用 []byte() 轉換來將字串指派給 Go 中的位元組數組。

以上是如何安全地將 Go 字串分配給位元組數組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板