ホームページ >バックエンド開発 >Golang >Go で固定サイズの配列をスライスに変換するにはどうすればよいですか?

Go で固定サイズの配列をスライスに変換するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-11-09 11:49:02313ブラウズ

How to Convert a Fixed-Size Array to a Slice in Go?

Go で固定サイズの配列を可変サイズの配列に変換する

Go で配列を操作する場合、多くの場合、固定サイズの配列を変数に変換する必要があります。 -size の配列 (スライス)。ただし、固定サイズの配列をスライスに直接割り当てようとすると、次の例に示すようにエラーが発生する可能性があります:

package main

import (
    "fmt"
)

func main() {
    var a [32]byte
    b := []byte(a)
    fmt.Println(" %x", b)
}

コンパイラはエラーをスローします:

./test.go:9: cannot convert a (type [32]byte) to type []byte

固定サイズの配列をスライスに正常に変換するには、式 b := a[:] を使用できます。これにより、コピーを作成せずに、基になる配列を参照するスライスが作成されます。

b := a[:]

追加リソース:

詳細については、次のブログ投稿を参照してください。 Go における配列とスライスの違いについて:

  • [配列とスライスの違い]行く](https://blog.logrocket.com/ Understanding-arrays-versus-slices-in-go/)

以上がGo で固定サイズの配列をスライスに変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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