In-depth understanding of character and integer conversion in Golang

WBOY
Release: 2024-04-03 12:39:02
Original
440 people have browsed it

Go 语言中字符和整型可通过以下方式转换:字符转整型:使用 strconv.Atoi() 将字符串转换为十进制整型。整型转字符:使用 strconv.Itoa() 将整型转换为十进制字符串,该整型值会被视为 ASCII 码值。实战案例:进制转换:使用 strconv.ParseInt() 和 strconv.FormatInt() 转换不同进制的整型。ASCII 码转换:使用 byte() 和 int() 将字符和 ASCII 码值进行互相转换。

In-depth understanding of character and integer conversion in Golang

深入理解 Go 中字符和整型的转换

在 Go 语言中,字符和整型之间的转换是常见任务。本篇文章将深入解析这些转换背后的机制并提供实战案例。

字符转整型

strconv.Atoi()函数可将字符串转换为整型:

import "strconv" func CharToInt(char byte) (int, error) { return strconv.Atoi(string(char)) }
Copy after login

整型转字符

strconv.Itoa()函数可将整型转换为字符串:

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

实战案例

进制转换

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 }
Copy after login

ASCII 码转换

func AsciiToChar(ascii int) byte { return byte(ascii) } func CharToAscii(char byte) int { return int(char) }
Copy after login

注意

  • strconv.ParseInt()strconv.FormatInt()可处理不同进制的整型(例如二进制、八进制、十进制等)。
  • strconv.Atoi()strconv.Itoa()仅处理十进制整型。
  • 如果字符串不是有效的整型表示,strconv.Atoi()strconv.ParseInt()会返回错误。

The above is the detailed content of In-depth understanding of character and integer conversion in Golang. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!