ホームページ  >  記事  >  バックエンド開発  >  Golang の塩基変換方法の簡単な分析

Golang の塩基変換方法の簡単な分析

PHPz
PHPzオリジナル
2023-04-14 09:33:271131ブラウズ

Golang (Go 言語とも呼ばれる) は、Google によって開発および保守されているオープンソース プログラミング言語です。 Golang における塩基変換は非常に基本的な操作です。この記事ではGolangを使って塩基変換する方法を紹介します。

  1. 10 進数を他の基数に変換する

まず、10 進数を 2 進数、8 進数、16 進数などの他の基数に変換する方法を見てみましょう。 Golang では、このタスクは fmt パッケージの Printf() 関数を使用して簡単に実行できます。以下は、10 進数の 13 を 2 進数、8 進数、および 16 進数に変換するサンプル コードです。

package main

import "fmt"

func main() {

n := 13
fmt.Printf("13的二进制表示为:%b\n", n)
fmt.Printf("13的八进制表示为:%o\n", n)
fmt.Printf("13的十六进制表示为:%x\n", n)

}

出力結果は次のとおりです。

13 の 2 進表現は次のとおりです。 1101
13 の 8 進表現は 15
13 の 16 進表現です。 as: d

  1. 他の基数を 10 進数に変換する

次に、2 進数、8 進数、16 進数を 10 進数に変換する方法を見てみましょう。これは、Golang の strconv パッケージを通じて実現できます。このパッケージには、さまざまな基数の整数を解析する関数など、多くの文字列関連関数が提供されます。以下は、2 進数 1101、8 進数 15、および 16 進数 d を 10 進数に変換するコード例です。

package main

import (

"fmt"
"strconv"

)

func main() {

b := "1101"
dec1, _ := strconv.ParseInt(b, 2, 64)
fmt.Printf("%s的十进制表示为:%v\n", b, dec1)

o := "15"
dec2, _ := strconv.ParseInt(o, 8, 64)
fmt.Printf("%s的十进制表示为:%v\n", o, dec2)

h := "d"
dec3, _ := strconv.ParseInt(h, 16, 64)
fmt.Printf("%s的十进制表示为:%v\n", h, dec3)

}

出力結果は次のとおりです。

1101 の 10 進表現は次のとおりです。 13
の 10 進表現15 は次のとおりです: 13
d の 10 進数表現は次のとおりです: 13

  1. 10 進数間の変換

10 進数間の変換に加えて、Golang は次の方法も提供します。塩基間で変換します。 strconv パッケージのitoa() 関数は整数を文字列に変換でき、FormatInt() 関数は整数を特定の基数の文字列に変換できます。以下は、16 進数 d を 2 進数または 8 進数に変換するサンプル コードです。

package main

import (

"fmt"
"strconv"

)

func main( ) {

h := "d"

//将十六进制数d转换为二进制
dec, _ := strconv.ParseInt(h, 16, 64)
fmt.Printf("%s的二进制表示为:%b\n", h, dec)

//将十六进制数d转换为八进制
oct, _ := strconv.ParseInt(h, 16, 64)
fmt.Printf("%s的八进制表示为:%o\n", h, oct)

}

出力結果は次のとおりです。

d の 2 進数表現は 1101
d の 8 進数表現は 15

# です。 # #結論

Golang によるベース変換は非常に基本的な操作です。この記事では、fmt パッケージと strconv パッケージを使用して、10 進数から他の基数への変換、他の基数から 10 進数への変換、基数間の変換などの基数変換を実行する方法を紹介します。この記事が Golang 初心者のお役に立てれば幸いです。

以上がGolang の塩基変換方法の簡単な分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。