Menu
Coddy logo textTech

ポインタのデリファレンス

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

ポインターの逆参照(*)を使用すると、メモリアドレスに格納されている値にアクセスできます。これはポインターを「逆参照」すると呼ばれます。

variable と pointer を作成します:

func main() {
    number := 42
    pointer := &number
    
    // ポインタをデリファレンスして値を取得する
    value := *pointer
    
    fmt.Println("Pointer:", pointer)
    fmt.Println("Dereferenced value:", value)
}

出力には pointer と、それが指し示す値の両方が表示されます:

Pointer: 0xc000018030
Dereferenced value: 42

pointer 変数の前にあるアスタリスク(*)は、そのメモリアドレスにある実際の値にアクセスします。

challenge icon

チャレンジ

初心者

このチャレンジでは、Goでポインタをデリファレンスする練習をします。文字列値を持つ変数 message と、それを指すポインタ messagePtr があります。

あなたの課題は、ポインタをデリファレンスして、ポインタが指している値にアクセスし、その値を出力することです。

自分で試してみよう

package main

import "fmt"

func main() {
	// これが私たちの文字列変数です
	message := "Hello, pointers!"
	
	// これはmessage変数へのポインタです
	messagePtr := &message
	
	// TODO: messagePtrをデリファレンスして、それが指す値を取得する
	// そしてそれを変数 'value' に格納する
	value := ""
	
	// 結果を出力する
	fmt.Println("The pointer points to the value:", value)
}
quiz icon腕試し

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

基礎のすべてのレッスン

自分で練習してみよう: Goオンラインコンパイラ