Rumah > pembangunan bahagian belakang > Golang > Bagaimana untuk Menetapkan Nilai Integer dengan Selamat kepada Penunjuk Integer dalam Go?

Bagaimana untuk Menetapkan Nilai Integer dengan Selamat kepada Penunjuk Integer dalam Go?

Barbara Streisand
Lepaskan: 2024-12-01 07:57:11
asal
1007 orang telah melayarinya

How to Safely Assign an Integer Value to an Integer Pointer in Go?

Menetapkan Penunjuk Int kepada Nilai Int dalam Go

Apabila cuba memberikan nilai kepada pembolehubah penunjuk, adalah penting untuk memastikan penunjuk bukan nol. Percubaan untuk menyahrujuk penuding sifar boleh menyebabkan panik masa jalan, seperti yang anda alami.

Penyelesaian:

Untuk menetapkan nilai yang ditunjuk, penuding mesti menunjuk kepada sesuatu yang sah . Anda boleh mendapatkan penuding kepada int bernilai sifar menggunakan fungsi new():

guess := new(int)
*guess = 12345
Salin selepas log masuk
Salin selepas log masuk

Ini memperuntukkan memori untuk pembolehubah int dan menetapkan penuding untuk menghala ke memori tersebut. Kini anda boleh mengubah suai nilai bertitik melalui penuding.

Pengisytiharan Ringkas:

Anda boleh memudahkan pengisytiharan dan permulaan menggunakan pengisytiharan pembolehubah pendek:

guess := new(int)
*guess = 12345
Salin selepas log masuk
Salin selepas log masuk

Alternatif Pendekatan:

Anda juga boleh menetapkan alamat pembolehubah sedia ada kepada penuding:

value := 12345
guess := &value
Salin selepas log masuk

Ini mengubah suai nilai penunjuk, bukan nilai yang ditunjuk. Walau bagaimanapun, dalam contoh mudah ini, kesannya adalah serupa.

Pengubahsuaian Nilai Rujuk:

Menukar nilai yang ditunjuk melalui penuding juga akan mengubah nilai pembolehubah ia menunjuk kepada. Sebaliknya, mengubah suai nilai pembolehubah akan mempengaruhi nilai yang ditunjuk:

var value int
guess := &value
value = 12345
fmt.Println(*guess)
// Prints: 12345
Salin selepas log masuk

Menggunakan penuding menyediakan cara yang mudah untuk mengubah suai nilai pembolehubah secara tidak langsung. Walau bagaimanapun, adalah penting untuk memulakan penunjuk dengan betul untuk mengelakkan ralat penunjuk tiada dan memastikan integriti data.

Atas ialah kandungan terperinci Bagaimana untuk Menetapkan Nilai Integer dengan Selamat kepada Penunjuk Integer dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan