ホームページ > バックエンド開発 > Golang > C char 配列を Go Byte 配列に変換するにはどうすればよいですか?

C char 配列を Go Byte 配列に変換するにはどうすればよいですか?

Barbara Streisand
リリース: 2024-12-04 12:03:13
オリジナル
658 人が閲覧しました

How Can I Convert a C char Array to a Go Byte Array?

C char 配列から Go バイト配列への変換

Go では、C char 配列からバイト配列への変換はさまざまな方法で実現できます。 。最も簡単なアプローチの 1 つは、char 配列を Go スライスにコピーすることです。これにより、配列サイズを明示的に指定する必要がなくなります。

mySlice := C.GoBytes(unsafe.Pointer(&C.my_buff), C.BUFF_SIZE)
ログイン後にコピー

あるいは、コピーを作成せずにメモリを直接利用するには、次のようにすることもできます。 unsafe.Pointer キャスト。配列型が必要な場合は、スライスを配列に変換する必要があります。

mySlice := unsafe.Slice((*byte)(unsafe.Pointer(&C.my_buf)), C.BUFF_SIZE)
myArray := ([C.BUFF_SIZE]byte)(mySlice)
ログイン後にコピー

これらの手法のいずれかを採用すると、C char 配列と Go バイト配列の間で効果的に変換でき、2 つの言語間の相互運用性が容易になります。 .

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

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