首頁  >  文章  >  後端開發  >  深入理解Golang中字元和整型的轉換

深入理解Golang中字元和整型的轉換

WBOY
WBOY原創
2024-04-03 12:39:02476瀏覽

Go 語言中字元和整數可透過以下方式轉換:字元轉整數:使用 strconv.Atoi() 將字串轉換為十進位整數。整數轉字元:使用 strconv.Itoa() 將整數轉換為十進位字串,該整數值會被視為 ASCII 碼值。實戰案例:進位轉換:使用 strconv.ParseInt() 和 strconv.FormatInt() 轉換不同進位的整數。 ASCII 碼轉換:使用 byte() 和 int() 將字元和 ASCII 碼值互相轉換。

深入理解Golang中字元和整型的轉換

深入理解 Go 中字元和整數的轉換

#在 Go 語言中,字元和整數之間的轉換是常見任務。本篇文章將深入解析這些轉換背後的機制並提供實戰案例。

字元轉整數

strconv.Atoi() 函數可將字串轉換為整數:

import "strconv"

func CharToInt(char byte) (int, error) {
    return strconv.Atoi(string(char))
}

整數轉字元

strconv.Itoa() 函數可將整數轉換為字串:

func IntToChar(num int) byte {
    return num + '0' // ‘0’ 的 ASCII 值为 48
}

實戰案例

進位轉換

#
func ConvertBase(num string, fromBase, toBase int) (string, error) {
    i, err := strconv.ParseInt(num, fromBase, 64)
    if err != nil {
        return "", err
    }
    return strconv.FormatInt(i, toBase), nil
}

ASCII 碼轉換

func AsciiToChar(ascii int) byte {
    return byte(ascii)
}

func CharToAscii(char byte) int {
    return int(char)
}

注意

  • strconv.ParseInt()strconv.FormatInt () 可處理不同進位的整數(例如二進位、八進位、十進位等)。
  • strconv.Atoi()strconv.Itoa() 只處理十進位整數。
  • 如果字串不是有效的整數表示,strconv.Atoi()strconv.ParseInt() 會傳回錯誤。

以上是深入理解Golang中字元和整型的轉換的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn