Go言語で16進数変換を行う方法

PHPz
リリース: 2023-04-11 09:44:13
オリジナル
2227 人が閲覧しました

Go 言語は、シンプルで信頼性の高いプログラムを迅速に開発するために使用できるオープンソース プログラミング言語です。 Go言語の開発過程では、16進数の変換が必要になることがよくあります。この記事ではGo言語で基数変換を行う方法を解説します。

10 進数から 2 進数への

Go 言語では、strconv パッケージを使用して 10 進数を 2 進数に変換できます。

package main

import (
    "fmt"
    "strconv"
)

func main() {
    num := 10
    binary := strconv.FormatInt(int64(num), 2)
    fmt.Println(num, "的二进制表示为", binary)
}
ログイン後にコピー

上記のコードは次を出力します:

10 的二进制表示为 1010
ログイン後にコピー

strconv.FormatInt() 関数は、10 進数をバイナリ文字列に変換します。この関数の最初のパラメータは変換される値で、2 番目のパラメータはターゲットの基数で、この例では 2 です。

バイナリ値から 10 進数への変換

バイナリ値を 10 進値に変換する必要がある場合は、strconv パッケージを使用することもできます。

package main

import (
    "fmt"
    "strconv"
)

func main() {
    binary := "1010"
    num, _ := strconv.ParseInt(binary, 2, 64)
    fmt.Println(binary, "的十进制表示为", num)
}
ログイン後にコピー

上記のコードは次のように出力します:

1010 的十进制表示为 10
ログイン後にコピー

strconv.ParseInt() 関数は文字列を整数に解析します。この関数の最初のパラメータは解析する文字列、2 番目のパラメータはターゲットのベース (この場合は 2)、3 番目のパラメータは結果の型の桁数で、この場合は 64-ビット整数。

10 進数から 16 進数への

Go 言語では、strconv パッケージは 10 進数を 16 進数に変換する関数も提供します。

package main

import (
    "fmt"
    "strconv"
)

func main() {
    num := 33752069
    hex := strconv.FormatInt(int64(num), 16)
    fmt.Println(num, "的十六进制表示为", hex)
}
ログイン後にコピー

上記のコードは次のように出力します:

33752069 的十六进制表示为 2030405
ログイン後にコピー

strconv.FormatInt() 関数は、10 進数を 16 進数の文字列に変換します。この関数の最初のパラメータは変換される値で、2 番目のパラメータはターゲットの基数で、この例では 16 です。

16 進数から 10 進数へ

16 進値を 10 進値に変換する必要がある場合は、strconv パッケージを使用することもできます。

package main

import (
    "fmt"
    "strconv"
)

func main() {
    hex := "2030405"
    num, _ := strconv.ParseInt(hex, 16, 64)
    fmt.Println(hex, "的十进制表示为", num)
}
ログイン後にコピー

上記のコードは次のように出力します:

2030405 的十进制表示为 33752069
ログイン後にコピー

strconv.ParseInt() 関数は文字列を整数に解析します。この関数の最初のパラメータは解析する文字列、2 番目のパラメータはターゲットのベース、この場合は 16、3 番目のパラメータは結果の型の桁数、この場合は 64 です。ビット整数。

概要

この記事では、Go 言語で基底変換を行う方法を紹介します。 strconv パッケージを使用すると、10 進数を他の基数に、または他の基数を 10 進数に簡単に変換できます。これは、Go 言語プログラミングにおいて非常に一般的なスキルの 1 つです。

以上がGo言語で16進数変換を行う方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート