Mendeklarasikan Variabel Pointer
Termasuk bagian Dasar-Dasar dalam perjalanan GO di Coddy. Pelajaran 61 dari 109.
Di Go, kamu dapat mendeklarasikan pointer dengan dua cara utama: menggunakan var dengan tipe pointer atau menggunakan operator alamat dengan :=.
Deklarasikan pointer menggunakan var dengan tipe pointer:
func main() {
var x int = 42
var ptr *int // Deklarasikan pointer ke bilangan bulat
ptr = &x // Tetapkan alamat x ke ptr
fmt.Println("Value of x:", x)
fmt.Println("Value of ptr:", ptr)
fmt.Println("Value at ptr:", *ptr)
}Output menunjukkan bahwa pointer menyimpan alamat x:
Value of x: 42
Value of ptr: 0xc000018030
Value at ptr: 42Kamu juga bisa mendeklarasikan dan menginisialisasi pointer dalam satu baris menggunakan :=:
y := 100
ptr := &y // Deklarasikan dan inisialisasi pointer dalam satu langkahTantangan
PemulaDalam tantangan ini, kamu akan berlatih mendeklarasikan dan menggunakan pointer di Go. Sebuah pointer sudah disiapkan untukmu, dan tugasmu adalah membuat pointer baru yang menunjuk ke nilai yang sama.
Selesaikan TODO dalam kode untuk mendeklarasikan variabel pointer baru bernama 'secondPointer' yang menunjuk ke alamat memori yang sama dengan pointer yang sudah ada.
Coba sendiri
package main
import "fmt"
func main() {
// Ini variabel dan pointer yang menunjuk ke variabel itu
originalValue := 42
pointerToValue := &originalValue
// TODO: Deklarasikan variabel pointer baru bernama 'secondPointer'
// yang menunjuk ke alamat memori yang sama dengan 'pointerToValue'
// Jangan ubah kode di bawah ini
fmt.Printf("Original value: %v\n", originalValue)
fmt.Printf("Value through first pointer: %v\n", *pointerToValue)
fmt.Printf("Value through second pointer: %v\n", *secondPointer)
// Mari ubah nilai awalnya dan lihat semua pointer mencerminkan perubahan itu
originalValue = 100
fmt.Printf("\nAfter changing original value to 100:\n")
fmt.Printf("Original value: %v\n", originalValue)
fmt.Printf("Value through first pointer: %v\n", *pointerToValue)
fmt.Printf("Value through second pointer: %v\n", *secondPointer)
}Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar
4Operator Perbandingan dan Logika
Operator Perbandingan, Bagian 1Operator Perbandingan, Bagian 2Operator AND LogikaOperator OR LogikaOperator NOT LogikaDasar Prioritas OperatorRingkasan, Membuat Perbandingan7Alur Kontrol: Perulangan
Penjelasan tentang `for` loop`for` loop Dasar`for` loop dengan Kondisi SajaKata Kunci `break`Kata Kunci `continue`Perulangan BersarangRangkuman: Mengulang Tindakan2Variabel dan Tipe Data Dasar
Apa itu variabelInferensi Tipe dengan `:=`Bilangan Bulat (int)Bilangan Floating-PointBooleanstringNilai NolKonstantaKonvensi PenamaanRangkuman: Variabel dan Tipe5Input/Output Dasar
Output TerformatKata Kerja FormatMencetak Tipe DataMendapatkan Input Dasar dari PenggunaRangkuman: Input dan Output8Fungsi
Memahami FungsiMendeklarasikan FungsiMemanggil FungsiParameter FungsiMengembalikan Satu NilaiMengembalikan Beberapa NilaiNilai Kembalian BernamaDasar Cakupan FungsiRangkuman: Membuat Kodemu Dapat Digunakan Kembali3Operator Dasar
Operator AritmetikaOperator PembagianOperator ModuloOperator PenugasanOperator Penugasan GabunganInkrementasi dan DekrementasiRangkuman: Perhitungan6Alur Kontrol: Percabangan
Pernyataan `if`Kata Kunci `else`Kata Kunci `else if`Shadowing Variabel dalam `if`Menginisialisasi VariabelPernyataan `switch``switch` dengan Ekspresi`switch` tanpa EkspresiKata Kunci `fallthrough`Ringkasan: Membuat Keputusan9Pointer
Apa Itu Pointer?Mendeklarasikan Variabel PointerOperator Address-OfMelakukan Dereferensi PointerMenggunakan Pointer dalam FungsiPointer NilUlasan: Memahami PointerLatihan sendiri: Compiler Go online