Menu
Coddy logo textTech

アドレス演算子

CoddyのGOジャーニー「基礎」セクションの一部 — レッスン 62/109。

アドレス演算子 (&)は、変数のメモリアドレスを取得します。これはGoでポインタを作成する方法です。

変数を作成し、そのメモリ番地を取得します:

func main() {
    number := 42
    addressOfNumber := &number
    
    fmt.Println("Value:", number)
    fmt.Println("Address:", addressOfNumber)
}

出力には値とそのメモリアドレスが表示されます:

Value: 42
Address: 0xc000018030

アドレス(0xc000018030 のようなもの)は、値が格納されているメモリ上の場所を表す16進数です。このアドレスは、プログラムを実行するたびに異なります。

challenge icon

チャレンジ

初心者
このチャレンジでは、Goにおけるアドレス演算子 (&) の使用を練習します。アドレス演算子は変数のメモリアドレスを返します。これは、変数の値がコンピュータのメモリ内のどこに格納されているかを示すものです。

あなたのタスクは、アドレス演算子を使用して提供された変数のメモリアドレスを取得し、既に宣言されているポインタ変数に格納することです。

チートシート

アドレス演算子 (&) は、変数のメモリアドレスを取得し、Goでポインタを作成するために使用されます。

number := 42
addressOfNumber := &number

fmt.Println("Value:", number)
fmt.Println("Address:", addressOfNumber)

アドレスは、値が格納されているメモリ上の場所を表す16進数(0xc000018030 など)として表示されます。このアドレスは、プログラムを実行するたびに異なります。

自分で試してみよう

package main

import "fmt"

func main() {
	// これはサンプルの変数です
	name := "Gopher"
	
	// これは文字列のアドレスを格納するためのポインタ変数を宣言しています
	var namePointer *string
	
	// TODO: アドレス演算子 (&) を使用して 'name' のメモリ番地を取得し、
	// それを 'namePointer' 変数に格納してください
	
	// ポインタが指し示している値を出力します
	fmt.Printf("The value at that memory address is: %v\n", *namePointer)
}
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

基礎のすべてのレッスン