Maison  >  Article  >  développement back-end  >  Compréhension approfondie de la conversion de caractères et d'entiers dans Golang

Compréhension approfondie de la conversion de caractères et d'entiers dans Golang

WBOY
WBOYoriginal
2024-04-03 12:39:02476parcourir

Les caractères et les entiers du langage Go peuvent être convertis des manières suivantes : Caractère en entier : utilisez strconv.Atoi() pour convertir une chaîne en un entier décimal. Conversion d'entier en caractère : utilisez strconv.Itoa() pour convertir l'entier en chaîne décimale. La valeur entière sera traitée comme une valeur de code ASCII. Cas pratique : conversion de bases : utilisez strconv.ParseInt() et strconv.FormatInt() pour convertir des entiers de bases différentes. Conversion de code ASCII : utilisez byte() et int() pour convertir les caractères et les valeurs de code ASCII les uns vers les autres.

Compréhension approfondie de la conversion de caractères et dentiers dans Golang

Compréhension approfondie de la conversion de caractères et d'entiers en Go

Dans le langage Go, la conversion entre caractères et entiers est une tâche courante. Cet article fournira une analyse approfondie des mécanismes à l’origine de ces conversions et fournira des exemples pratiques.

Convertir un caractère en entier

La fonction strconv.Atoi() peut convertir une chaîne en entier : 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()rrreee
  • Convertir un entier en caractère
🎜strconv.Itoa() La fonction peut convertir un entier en chaîne : 🎜rrreee🎜Cas pratique🎜🎜Conversion de base🎜rrreee🎜Conversion de code ASCII🎜rrreee🎜Note🎜
    strconv. ParseInt() et strconv.FormatInt() peuvent gérer des types entiers dans différentes bases (telles que binaire, octale, décimale, etc.). 🎜
  • strconv.Atoi() et strconv.Itoa() ne gèrent que les entiers décimaux. 🎜
  • strconv.Atoi() et strconv.ParseInt() renverront une erreur si la chaîne n'est pas une représentation entière valide. 🎜🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn